@stacksjs/actions 0.70.71 → 0.70.73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/action.js +1 -1
- package/dist/actions.js +1 -1
- package/dist/add.js +1 -1
- package/dist/ai/request-model-access.js +1 -1
- package/dist/blog.js +1 -1
- package/dist/build/frontend-static.js +1 -1
- package/dist/build.js +1 -1
- package/dist/bump.js +2 -1
- package/dist/{chunk-badehrwa.js → chunk-0wyxyqak.js} +1 -1
- package/dist/{chunk-5dfz9en9.js → chunk-1ebgbeyr.js} +2 -2
- package/dist/{chunk-nm9h5rye.js → chunk-29eg94q3.js} +2 -2
- package/dist/{chunk-jve1p4dz.js → chunk-8maaf0ze.js} +2 -2
- package/dist/{chunk-nn1a9b4f.js → chunk-8tmc78d6.js} +1 -1
- package/dist/{chunk-5hwp0frq.js → chunk-acyw294f.js} +1 -1
- package/dist/{chunk-vsj8ns4p.js → chunk-ay41a7jn.js} +1 -1
- package/dist/{chunk-8r76qydb.js → chunk-b10hy2vq.js} +2 -2
- package/dist/{chunk-xhznkfad.js → chunk-bbd6n9q2.js} +2 -2
- package/dist/{chunk-9a8838dc.js → chunk-c0cs49hn.js} +2 -2
- package/dist/{chunk-63swek9d.js → chunk-ckcjsw9a.js} +2 -2
- package/dist/{chunk-aazd6qpv.js → chunk-d5mbs5zz.js} +1 -1
- package/dist/{chunk-8gbewxns.js → chunk-e87s6b8r.js} +1 -1
- package/dist/{chunk-e8505qz8.js → chunk-h10aj7jf.js} +2 -2
- package/dist/{chunk-4qzb8g3z.js → chunk-h3163h5z.js} +1 -1
- package/dist/{chunk-p601xr03.js → chunk-h63c1v89.js} +1 -1
- package/dist/{chunk-pqnzp7x8.js → chunk-j9vajggg.js} +2 -2
- package/dist/{chunk-sp5cjdhd.js → chunk-jn81jcta.js} +1 -1
- package/dist/{chunk-jv7ry09n.js → chunk-k7n6c9hm.js} +1 -1
- package/dist/{chunk-az3bb5fg.js → chunk-m0v346zb.js} +1 -1
- package/dist/{chunk-5pwpk005.js → chunk-prpycg7f.js} +2 -2
- package/dist/{chunk-ryz8etwk.js → chunk-qqth0x9w.js} +2 -2
- package/dist/{chunk-z7qb1602.js → chunk-r3t7shd4.js} +1 -1
- package/dist/chunk-rft5b6wr.js +3 -0
- package/dist/{chunk-zehw6yk8.js → chunk-vn8sr2rt.js} +2 -2
- package/dist/{chunk-tqax3gbq.js → chunk-vntz6mtt.js} +1 -1
- package/dist/{chunk-23thftnv.js → chunk-vv4nqhgg.js} +1 -1
- package/dist/{chunk-mcwfmqzb.js → chunk-w363nwy3.js} +1 -1
- package/dist/{chunk-ag4fy7cx.js → chunk-wtnp31q5.js} +1 -1
- package/dist/{chunk-67am4dae.js → chunk-y5k9qbfd.js} +1 -1
- package/dist/commit.js +1 -1
- package/dist/deploy/index.js +2 -2
- package/dist/dev/api.js +1 -1
- package/dist/dev/dashboard-globals.js +1 -1
- package/dist/dev/dashboard-utils.js +1 -1
- package/dist/dev/dashboard.js +2 -2
- package/dist/dev/index.js +1 -1
- package/dist/dev/migrate-watcher.js +1 -1
- package/dist/dev/views.js +1 -1
- package/dist/discover-packages.js +1 -1
- package/dist/examples.js +1 -1
- package/dist/generate/component-meta.js +1 -1
- package/dist/generate/env-files.js +1 -1
- package/dist/generate/ide-helpers.js +1 -1
- package/dist/generate/index.js +1 -1
- package/dist/generate/lib-entries.js +1 -1
- package/dist/generate/vscode-custom-data.js +1 -1
- package/dist/helpers/component-meta.js +1 -1
- package/dist/helpers/index.js +1 -1
- package/dist/helpers/lib-entries.js +1 -1
- package/dist/helpers/package-json.js +1 -1
- package/dist/helpers/utils.js +1 -1
- package/dist/helpers/vscode-custom-data.js +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.js +1 -1
- package/dist/lint/fix.js +2 -4
- package/dist/lint/index.js +1 -1
- package/dist/lint/lint.d.ts +14 -0
- package/dist/lint/lint.js +2 -0
- package/dist/make-command.js +1 -1
- package/dist/make-job.js +1 -1
- package/dist/make-policy.js +1 -1
- package/dist/make-resource.js +1 -1
- package/dist/make.js +1 -1
- package/dist/orm/base.js +1 -1
- package/dist/release.js +1 -1
- package/dist/run-action.js +1 -1
- package/dist/scaffold-crud.js +1 -1
- package/dist/setup/index.js +1 -1
- package/dist/setup/ssl.js +1 -1
- package/dist/stacks.js +1 -1
- package/dist/templates.js +1 -1
- package/dist/types.js +1 -1
- package/dist/upgrade/dependencies.js +1 -1
- package/dist/upgrade/framework-utils.js +1 -1
- package/dist/upgrade/framework.js +1 -1
- package/dist/upgrade/index.js +1 -1
- package/dist/upgrade/packages.js +8 -7
- package/dist/upgrade.js +1 -1
- package/package.json +24 -16
- /package/dist/{chunk-e9tcbk71.js → chunk-g6k41p49.js} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{sb as H}from"./chunk-h3163h5z.js";import{execSync as M,spawn as j}from"child_process";import Z from"fs";import E from"os";import $ from"path";import Y from"process";import{log as B}from"@stacksjs/cli";var q=Y.platform==="win32"?$.join(Y.env.windir||"C:\\Windows","System32","drivers","etc","hosts"):"/etc/hosts",X=$.join(E.homedir(),".stacks","ssl");function T(){return Y.stdin.isTTY===!0&&Y.stdout.isTTY===!0}function V(){return Y.env.SUDO_PASSWORD}function k(){return T()||!!V()}function F(z){try{let G=Z.readFileSync(q,"utf-8");return G.includes(`127.0.0.1 ${z}`)||G.includes(`::1 ${z}`)}catch{if(Y.platform!=="win32"){let G=V();if(G)try{let J=M(`echo '${G}' | sudo -S cat "${q}" 2>/dev/null`,{encoding:"utf-8"});return J.includes(`127.0.0.1 ${z}`)||J.includes(`::1 ${z}`)}catch{return!1}}return!1}}async function x(z,G){if(F(z)){if(G)B.info(`${z} already in hosts file`);return!0}let J=`
|
|
3
3
|
# Added by Stacks
|
|
4
4
|
127.0.0.1 ${z}
|
|
5
5
|
::1 ${z}
|
|
6
6
|
`;if(Y.platform==="win32")return B.warn("Please add this to your hosts file manually:"),B.warn(`127.0.0.1 ${z}`),B.warn(`::1 ${z}`),B.warn(`File location: ${q}`),!1;if(!k()){if(G)B.warn(`Cannot add ${z} to hosts file (non-interactive mode and no SUDO_PASSWORD set)`),B.info("Run `buddy setup:ssl` in a terminal or set SUDO_PASSWORD environment variable");return!1}let K=V();return new Promise((Q)=>{let N;if(K)N=j("sh",["-c",`echo '${K}' | sudo -S sh -c "echo '${J}' >> '${q}'"`],{stdio:["pipe","inherit","inherit"]});else N=j("sudo",["sh","-c",`echo '${J}' >> "${q}"`],{stdio:"inherit"});N.on("close",(U)=>{if(U===0){if(G)B.success(`Added ${z} to hosts file`);Q(!0)}else{if(G)B.error(`Failed to add ${z} to hosts file`),B.warn(`Manually add: 127.0.0.1 ${z}`);Q(!1)}}),N.on("error",()=>{B.error("Failed to run sudo command"),Q(!1)})})}function O(z){let G=$.join(X,`${z}.crt`),J=$.join(X,`${z}.key`),K=$.join(X,`${z}.ca.crt`);return Z.existsSync(G)&&Z.existsSync(J)&&Z.existsSync(K)}function y(z){if(Y.platform!=="darwin")return!0;let G=$.join(X,`${z}.crt`);if(!Z.existsSync(G))return!1;try{let J=M(`openssl x509 -noout -fingerprint -sha256 -in "${G}"`,{encoding:"utf-8"}),K=J.indexOf("="),Q=K>=0?J.slice(K+1).trim():"";if(!Q)return!1;return M("security find-certificate -a -Z -p | openssl x509 -noout -fingerprint -sha256 2>/dev/null || true",{encoding:"utf-8"}).includes(Q)}catch{return!1}}async function D(z,G){let J=$.join(X,`${z}.ca.crt`),K=$.join(X,`${z}.crt`);if(!Z.existsSync(J))return B.error(`CA certificate not found: ${J}`),!1;if(y(z)){if(G)B.info("Certificate is already trusted, skipping trust step");return!0}if(!k()){if(G)B.warn("Cannot trust certificate (non-interactive mode and no SUDO_PASSWORD set)"),B.info("Run `buddy setup:ssl` in a terminal or set SUDO_PASSWORD environment variable");return!1}let Q=V();if(Y.platform==="darwin")return new Promise((N)=>{let U=`security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain '${J}' && security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain '${K}'`,W;if(Q)W=j("sh",["-c",`echo '${Q}' | sudo -S sh -c "${U}"`],{stdio:["pipe","inherit","inherit"]});else W=j("sudo",["sh","-c",U],{stdio:"inherit"});W.on("close",(A)=>{if(A===0){try{M(`security add-trusted-cert -d -r trustRoot -k ~/Library/Keychains/login.keychain-db "${K}" 2>/dev/null || true`)}catch{}N(!0)}else{if(G)B.warn("Could not trust certificate automatically"),B.info(` sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain "${J}"`);N(!1)}}),W.on("error",()=>{B.error("Failed to run sudo command"),N(!1)})});else if(Y.platform==="linux")return new Promise((N)=>{let U=`mkdir -p /usr/local/share/ca-certificates/stacks && cp '${J}' /usr/local/share/ca-certificates/stacks/ && update-ca-certificates`,W;if(Q)W=j("sh",["-c",`echo '${Q}' | sudo -S sh -c "${U}"`],{stdio:["pipe","inherit","inherit"]});else W=j("sudo",["sh","-c",U],{stdio:"inherit"});W.on("close",(A)=>{if(A===0)B.success("Certificate trusted"),N(!0);else B.warn("Could not trust certificate automatically"),N(!1)}),W.on("error",()=>N(!1))});else if(Y.platform==="win32")return B.warn("Please manually trust the certificate in Windows:"),B.warn(` 1. Double-click: ${J}`),B.warn(' 2. Click "Install Certificate"'),B.warn(' 3. Select "Local Machine" and place in "Trusted Root Certification Authorities"'),!1;return!1}async function R(z,G){try{let J=await import("@stacksjs/tlsx"),{generateCertificate:K,createRootCA:Q}=J,N=J.httpsConfig;if(!Z.existsSync(X))Z.mkdirSync(X,{recursive:!0});let U={domain:z,hostCertCN:z,basePath:X,caCertPath:$.join(X,`${z}.ca.crt`),certPath:$.join(X,`${z}.crt`),keyPath:$.join(X,`${z}.key`),altNameIPs:["127.0.0.1","::1"],altNameURIs:["localhost",z],organizationName:"Stacks Development",countryName:"US",stateName:"California",localityName:"Playa Vista",commonName:z,validityDays:825,verbose:G||!1,subjectAltNames:[{type:2,value:z},{type:2,value:`*.${z.split(".").slice(1).join(".")}`},{type:2,value:"localhost"},{type:2,value:"*.localhost"}]};if(G)B.info("Generating Root CA certificate...");let W=await Q(U);if(G)B.info(`Generating host certificate for ${z}...`);let A=await K({...U,rootCA:{certificate:W.certificate,privateKey:W.privateKey}});if(Z.writeFileSync(U.caCertPath,W.certificate),Z.writeFileSync(U.certPath,A.certificate),Z.writeFileSync(U.keyPath,A.privateKey),G)B.success(`SSL certificates generated for ${z}`);return!0}catch(J){return B.error(`Failed to generate certificates: ${J}`),!1}}async function C(z={}){let G=z.domain||Y.env.APP_URL?.replace(/^https?:\/\//,"")||"stacks.localhost";if(G==="localhost"||G.startsWith("localhost:"))return B.info("Skipping SSL setup for localhost"),!0;let J=!0;if(!z.skipHosts){if(!await x(G,z.verbose)&&z.verbose)B.warn("Hosts file not updated - you may need to add the entry manually")}if(!O(G)){if(z.verbose)B.info("Generating SSL certificates...");if(!await R(G,z.verbose))return B.error("Failed to generate SSL certificates"),!1}if(!z.skipTrust&&!y(G)){if(!await D(G,z.verbose))B.warn("Certificate not trusted - you may see browser warnings"),J=!1}return J}function f(z){return F(z)&&O(z)}
|
|
7
|
-
export{F as
|
|
7
|
+
export{F as t,x as u,O as v,y as w,D as x,R as y,C as z,f as A};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{a as b,b as v}from"./chunk-dbz9dp2h.js";import"./chunk-xg9xscqz.js";import"./chunk-
|
|
2
|
+
import{a as b,b as v}from"./chunk-dbz9dp2h.js";import"./chunk-xg9xscqz.js";import"./chunk-h3163h5z.js";import T from"fs";import $ from"path";import _ from"fs";import G from"path";import q from"path";import x from"fs";import L from"path";import N from"fs";import C from"path";function w(I,B){let J=["// Auto-generated by STX - do not edit",'declare module "stx/routes" {'," interface RouteMap {"];for(let K of I){let O=[];for(let V of K.params){let Y=K.pattern.includes(`:${V}*`)?"string[]":"string";O.push(`${V}: ${Y}`)}let W=O.join("; ");J.push(` '${K.pattern}': { ${W} }`)}J.push(" }","}",""),_.mkdirSync(B,{recursive:!0}),_.writeFileSync(G.join(B,"route-types.d.ts"),J.join(`
|
|
3
3
|
`))}function D(I,B,J){let K=process.cwd(),O=G.relative(K,J),W=["components","layouts","partials"],V=I.filter((X)=>!W.some((Z)=>X.pattern.startsWith(`/${Z}/`)||X.pattern===`/${Z}`)),Y=["// Auto-generated by stx \u2014 do not edit",`// Source: ${O||"pages"}/`,"","export const routes = ["];for(let X of V){let Z=G.relative(K,X.filePath).replace(/\\/g,"/"),z=JSON.stringify(X.params),j=X.layout?`, layout: '${G.relative(K,X.layout).replace(/\\/g,"/")}'`:"";Y.push(` { pattern: '${X.pattern}', filePath: '${Z}', isDynamic: ${X.isDynamic}, params: ${z}${j} },`)}Y.push("] as const",""),Y.push("export type RouteName = typeof routes[number]['pattern']",""),_.mkdirSync(B,{recursive:!0}),_.writeFileSync(G.join(B,"routes.ts"),Y.join(`
|
|
4
4
|
`))}function P(I,B){let K=q.relative(B,I).replace(/\.(stx|md)$/,"");if(K=K.split(q.sep).join("/"),K==="index")return"/";if(K.endsWith("/index"))K=K.slice(0,-6);return K=K.replace(/\[\[([^\]]+)\]\]/g,":$1?"),K=K.replace(/\[([^\]]+)\]/g,":$1"),K=K.replace(/:\.\.\.([^/]+)/g,":$1*"),`/${K}`}function k(I){let B=[],J=I.replace(/[.+^${}()|[\]\\]/g,"\\$&");return J=J.replace(/\/:([^/]+)\?/g,(K,O)=>{return B.push(O),"(?:/([^/]+))?"}),J=J.replace(/:([^/]+)\*/g,(K,O)=>{return B.push(O),"(.+)"}),J=J.replace(/:([^/]+)/g,(K,O)=>{return B.push(O),"([^/]+)"}),J=`^${J}$`,{regex:new RegExp(J),params:B}}function o(I,B){let J=I===""?"/":I;for(let K of B){let O=J.match(K.regex);if(O){let W={};return K.params.forEach((V,Y)=>{W[V]=O[Y+1]}),{route:K,params:W}}}return null}function y(I,B){let J=[],K=L.dirname(I);while(K.startsWith(B)||K===B){let O=L.join(K,"_layout.stx");if(x.existsSync(O))J.unshift(O);if(K===B)break;K=L.dirname(K)}return J}function R(I,B){let J=[];if(!T.existsSync(I))return J;let K=T.readdirSync(I,{withFileTypes:!0});for(let O of K){let W=$.join(I,O.name);if(O.isDirectory()){if(O.name.startsWith("."))continue;J.push(...R(W,B))}else if(O.isFile()){let V=$.extname(O.name);if(B.includes(V)){if(O.name.startsWith("_")&&O.name!=="_layout.stx")continue;if(O.name==="_layout.stx")continue;J.push(W)}}}return J}class S{routes;pagesDir;pagesDirs;config;constructor(I,B={}){this.config=B;let J=B.pagesDirs&&B.pagesDirs.length>0?B.pagesDirs:[B.pagesDir||"pages"];this.pagesDirs=J.map((V)=>$.resolve(I,V)),this.pagesDir=this.pagesDirs[0];let K=B.extensions||[".stx"],O=new Set;this.routes=[];for(let V of this.pagesDirs){let Y=R(V,K);for(let X of Y){let Z=P(X,V);if(O.has(Z))continue;O.add(Z);let{regex:z,params:j}=k(Z),F=B.layouts!==!1?y(X,V):[];this.routes.push({pattern:Z,regex:z,params:j,filePath:X,isDynamic:j.length>0,layout:F.length>0?F[F.length-1]:void 0})}}this.routes.sort((V,Y)=>{if(!V.isDynamic&&Y.isDynamic)return-1;if(V.isDynamic&&!Y.isDynamic)return 1;let X=V.pattern.split("/").length,Z=Y.pattern.split("/").length;if(X!==Z)return Z-X;return V.pattern.localeCompare(Y.pattern)});let W=$.join(I,".stx");w(this.routes,W),D(this.routes,W,this.pagesDir)}match(I){let B=I===""?"/":I;for(let J of this.routes){let K=B.match(J.regex);if(K){let O={};return J.params.forEach((W,V)=>{O[W]=K[V+1]}),{route:J,params:O}}}return null}resolve(I,B){let J=this.routes.find((O)=>O.pattern===I||O.filePath.includes(I));if(!J)return"#not-found";let K=J.pattern;if(B)for(let[O,W]of Object.entries(B))K=K.replace(`:${O}`,encodeURIComponent(W));return K}addRoute(I){this.routes.push(I),this.routes.sort((B,J)=>{if(!B.isDynamic&&J.isDynamic)return-1;if(B.isDynamic&&!J.isDynamic)return 1;return B.pattern.localeCompare(J.pattern)})}getLayout(I){return I.layout??null}}function a(I,B){return new S(I,B)}function e(I,B){let J=[`${B}.stx`,"error.stx"];for(let K of J){let O=$.join(I,K);if(T.existsSync(O))return O}return null}function BB(I,B){return I.map((J)=>{let K=$.relative(B,J.filePath),O=J.isDynamic?" (dynamic)":"";return`${J.pattern} \u2192 ${K}${O}`})}var A={},E="";function IB(I){E=I.replace(/\/$/,"")}function JB(I,B,J={}){A[I]={path:B,name:I,params:J}}function KB(I){for(let[B,J]of Object.entries(I))if(typeof J==="string")A[B]={path:J,name:B};else A[B]={...J,name:B}}function OB(I,B={},J=!1){let K=A[I];if(!K)return console.warn(`Route [${I}] not defined.`),"#undefined-route";let O={...K.params,...B},W=K.path;W=W.replace(/:(\w+)/g,(Y,X)=>{let Z=O[X];if(Z===void 0)return console.warn(`Missing parameter [${X}] for route [${I}].`),`:${X}`;return delete O[X],encodeURIComponent(String(Z))});let V=Object.entries(O);if(V.length>0){let Y=V.map(([X,Z])=>`${encodeURIComponent(X)}=${encodeURIComponent(String(Z))}`).join("&");W+=(W.includes("?")?"&":"?")+Y}return J&&E?`${E}${W}`:W}function VB(){for(let I of Object.keys(A))delete A[I];E=""}function YB(I,B={}){return{type:"redirect",path:I,options:{replace:B.replace??!1,external:B.external??!1,redirectCode:B.redirectCode??302}}}function ZB(I){return{type:"abort",error:typeof I==="string"?{statusCode:500,message:I}:I}}function $B(I,B={}){return{handler:I,mode:B.mode??"universal"}}function H(I){let B={};if(!I)return B;let J=I.split(";");for(let K of J){let[O,...W]=K.split("=");if(O){let V=O.trim(),Y=W.join("=").trim();if(V)B[V]=decodeURIComponent(Y)}}return B}function U(I,B,J={}){let K=`${encodeURIComponent(I)}=${encodeURIComponent(B)}`;if(J.expires){let O=typeof J.expires==="number"?new Date(Date.now()+J.expires*1000):J.expires;K+=`; Expires=${O.toUTCString()}`}if(J.path)K+=`; Path=${J.path}`;if(J.domain)K+=`; Domain=${J.domain}`;if(J.secure)K+="; Secure";if(J.httpOnly)K+="; HttpOnly";if(J.sameSite)K+=`; SameSite=${J.sameSite}`;return K}function f(I,B){let J=I.headers.get("cookie")||"",K=H(J);return{get(O){return K[O]},set(O,W,V={}){K[O]=W,B.append("Set-Cookie",U(O,W,V))},delete(O){delete K[O],B.append("Set-Cookie",U(O,"",{expires:new Date(0),path:"/"}))},getAll(){return{...K}}}}function g(){return{get(I){if(typeof document>"u")return;return H(document.cookie)[I]},set(I,B,J={}){if(typeof document>"u")return;document.cookie=U(I,B,J)},delete(I){if(typeof document>"u")return;document.cookie=U(I,"",{expires:new Date(0),path:"/"})},getAll(){if(typeof document>"u")return{};return H(document.cookie)}}}function h(){let I=typeof window<"u"&&typeof window.localStorage<"u";return{get(B){if(!I)return null;try{return window.localStorage.getItem(B)}catch{return null}},set(B,J){if(!I)return;try{window.localStorage.setItem(B,J)}catch{}},remove(B){if(!I)return;try{window.localStorage.removeItem(B)}catch{}},isAvailable(){return I}}}var Q=new Map;function M(I,B){Q.set(I,B)}function c(I){return Q.get(I)}function AB(I){return Q.has(I)}function GB(){Q.clear()}function QB(){return Array.from(Q.keys())}async function jB(I,B="middleware"){let J=C.resolve(I,B);if(!N.existsSync(J))return;let K=N.readdirSync(J);for(let O of K){if(!O.endsWith(".ts")&&!O.endsWith(".js"))continue;if(O.includes(".test.")||O.includes(".spec."))continue;let W=O.replace(/\.(ts|js)$/,""),V=C.join(J,O);try{let X=(await import(V)).default;if(X&&typeof X.handler==="function")M(W,X);else if(typeof X==="function")M(W,{handler:X,mode:"universal"})}catch(Y){console.warn(`Failed to load middleware '${W}' from ${V}:`,Y)}}}function d(I){let B={};if(!I)return B;let J=new URLSearchParams(I);for(let[K,O]of J)B[K]=O;return B}function _B(I,B,J,K=""){return{path:I,params:B,query:d(K),fullPath:K?`${I}?${K}`:I,meta:J}}function EB(I,B,J){let K=typeof window>"u",O=!K,W=new Headers;return{to:I,from:B,isClient:O,isServer:K,cookies:K&&J?f(J,W):g(),storage:h(),state:{},request:J,responseHeaders:W}}async function UB(I,B){let J=Array.isArray(I)?I:[I],K=B.isServer;for(let O of J){let W=c(O);if(!W){console.warn(`Middleware '${O}' not found`);continue}if(W.mode==="server"&&!K)continue;if(W.mode==="client"&&K)continue;try{let V=await W.handler(B);if(V){if(V.type==="redirect")return{passed:!1,redirect:V,state:B.state,responseHeaders:B.responseHeaders};if(V.type==="abort")return{passed:!1,abort:V,state:B.state,responseHeaders:B.responseHeaders}}}catch(V){return console.error(`Error in middleware '${O}':`,V),{passed:!1,abort:{type:"abort",error:{statusCode:500,message:V instanceof Error?V.message:"Middleware error"}},state:B.state,responseHeaders:B.responseHeaders}}}return{passed:!0,state:B.state,responseHeaders:B.responseHeaders}}function zB(){return`
|
|
5
5
|
;(function(){
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var{Glob:E}=globalThis.Bun;import G from"path";var U={user:"person.fill",team:"person.2.fill",subscriber:"envelope.open.fill",subscriberemail:"envelope.fill",post:"doc.text.fill",page:"doc.fill",product:"cube.box.fill",productvariant:"cube.fill",productunit:"scalemass.fill",order:"list.clipboard.fill",orderitem:"list.bullet.clipboard.fill",customer:"person.crop.circle.fill",payment:"creditcard.fill",paymentmethod:"creditcard.and.123",paymentproduct:"creditcard.fill",paymenttransaction:"creditcard.fill",category:"tag.fill",tag:"tag",comment:"bubble.left.fill",author:"person.text.rectangle.fill",notification:"bell.fill",job:"briefcase.fill",log:"list.bullet.rectangle.portrait.fill",campaign:"megaphone.fill",review:"star.fill",coupon:"ticket.fill",giftcard:"giftcard.fill",cart:"cart.fill",cartitem:"cart.badge.plus",taxrate:"percent",transaction:"arrow.left.arrow.right.circle.fill",subscription:"repeat.circle.fill",emaillist:"envelope.badge.person.crop",socialpost:"bubble.left.and.bubble.right.fill",manufacturer:"building.2.fill",shippingmethod:"shippingbox.fill",shippingzone:"map.fill",shippingrate:"dollarsign.circle.fill",deliveryroute:"map.fill",driver:"car.fill",digitaldelivery:"arrow.down.doc.fill",licensekey:"key.fill",loyaltypoint:"star.circle.fill",loyaltyreward:"gift.fill",printdevice:"printer.fill",receipt:"doc.text.fill",waitlistproduct:"clock.fill",waitlistrestaurant:"clock.badge.checkmark.fill",websocket:"antenna.radiowaves.left.and.right",default:"tablecells.fill"},W=new Set(["activity","request","error","failedjob"]),H=new Set(["user","team","subscriber","post","page","product","order","customer","payment","coupon","category","tag","comment","author","notification","job","campaign","review","gift-card"]),_={user:"data",team:"data",subscriber:"data",activity:"data",campaign:"marketing",emaillist:"marketing",socialpost:"marketing",subscriberemail:"marketing",comment:"content",tag:"content",paymentmethod:"commerce",paymentproduct:"commerce",paymenttransaction:"commerce",subscription:"commerce",deployment:"system",error:"system",failedjob:"system",job:"system",log:"system",notification:"system",release:"system",request:"system"};function A(j){return j.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}function D(j){return U[j.toLowerCase()]||U.default||"database"}function S(j,F,k){if(k)return k;let J=j.includes("/")?(j.split("/")[0]??"").toLowerCase():"";if(J==="commerce")return"commerce";if(J==="content")return"content";if(J==="realtime")return"system";return _[F.replace(/-/g,"")]??"data"}async function T(j){try{let F=await import(j);return(F.default??F).dashboard}catch{return}}async function V(j,F,k,J){try{let K=new E("**/*.ts");for await(let Q of K.scan({cwd:j})){if(Q.includes("README")||Q.includes(".d.ts"))continue;let $=Q.replace(/\.ts$/,"").split("/").pop()||"",Z=$.toLowerCase();if($&&!F.has(Z)&&!W.has(Z)){F.add(Z);let z=A($),X=G.join(j,Q),q=await T(X);k.push({name:$,icon:q?.icon??D($),id:z,category:S(Q,z,J),dashboard:q})}}}catch{}}async function N(j,F){let k=[],J=new Set;return await Promise.all([V(j,J,k,"userland"),V(F,J,k)]),k.sort((K,Q)=>K.name.localeCompare(Q.name))}function C(j){return j.map((F)=>{let k={id:F.id,name:F.name,icon:F.icon,hasDedicatedPage:H.has(F.id),category:F.category??"data"};if(F.dashboard)k.dashboard=F.dashboard;return k})}async function x(j){try{return Bun.serve({port:j,fetch:()=>new Response}).stop(!0),!0}catch{return!1}}async function I(j,F=20){for(let k=0;k<F;k++){let J=j+k;if(await x(J))return J}return j}async function P(j,F=500){let k=Date.now();while(Date.now()-k<F){try{let J=await fetch(`http://localhost:${j}/`,{method:"HEAD"});if(J.ok||J.status===404)return!0}catch{}await new Promise((J)=>setTimeout(J,25))}return!1}function Y(j){if(j.dashboard?.enabled===!1)return;if(j.dashboard?.section)return j.dashboard.section;return j.category??"data"}function B(j,F,k,J){return F.filter((K)=>Y(K)===k).filter((K)=>!H.has(K.id)&&!J.has(K.id)).map((K)=>({id:`model-${K.id}`,label:K.dashboard?.label??K.name,icon:K.icon,url:`${j}/models/${K.id}`,...K.dashboard?.roles&&K.dashboard.roles.length>0?{roles:K.dashboard.roles}:{}}))}function y(j,F,k={}){let J={library:k.library??!0,content:k.content??!0,commerce:k.commerce??!0,marketing:k.marketing??!0,analytics:k.analytics??!0,management:k.management??!0,utilities:k.utilities??!0},K={dashboard:k.data?.dashboard??!0,activity:k.data?.activity??!0,users:k.data?.users??!0,teams:k.data?.teams??!0,subscribers:k.data?.subscribers??!0,allModels:k.data?.allModels??!0},Q=[],$=[{id:"home",label:"Dashboard",icon:"house.fill",url:`${j}/`},{id:"dependencies",label:"Dependencies",icon:"shippingbox.fill",url:`${j}/dependencies`},{id:"health",label:"Health",icon:"heart.text.square.fill",url:`${j}/health`}];if(k.ci)$.push({id:"ci",label:"CI",icon:"checkmark.seal.fill",url:`${j}/ci`});if(Q.push({id:"home",title:"Home",items:$}),J.library)Q.push({id:"library",title:"Library",items:[{id:"functions",label:"Functions",icon:"function",url:`${j}/functions`},{id:"packages",label:"Packages",icon:"shippingbox.fill",url:`${j}/packages`}]});if(J.content)Q.push({id:"content",title:"Content",items:[{id:"content-dashboard",label:"Dashboard",icon:"gauge.with.dots.needle.33percent",url:`${j}/content/dashboard`},{id:"files",label:"Files",icon:"folder.fill",url:`${j}/content/files`},{id:"pages",label:"Pages",icon:"doc.fill",url:`${j}/content/pages`},{id:"posts",label:"Posts",icon:"text.bubble.fill",url:`${j}/content/posts`},{id:"categories",label:"Categories",icon:"tag.fill",url:`${j}/content/categories`},{id:"tags",label:"Tags",icon:"tag",url:`${j}/content/tags`},{id:"comments",label:"Comments",icon:"bubble.left.fill",url:`${j}/content/comments`},{id:"authors",label:"Authors",icon:"person.text.rectangle.fill",url:`${j}/content/authors`},{id:"seo",label:"SEO",icon:"magnifyingglass",url:`${j}/content/seo`},...B(j,F,"content",new Set(["page","post","category","tag","comment","author"]))]});Q.push({id:"app",title:"App",items:[{id:"deployments",label:"Deployments",icon:"rocket.fill",url:`${j}/deployments`},{id:"requests",label:"Requests",icon:"arrow.left.arrow.right",url:`${j}/requests`},{id:"realtime",label:"Realtime",icon:"link",url:`${j}/realtime`},{id:"actions",label:"Actions",icon:"bolt.fill",url:`${j}/actions`},{id:"commands",label:"Commands",icon:"terminal.fill",url:`${j}/commands`},{id:"queue",label:"Queue",icon:"list.bullet.rectangle.fill",url:`${j}/queue`},{id:"jobs",label:"Jobs",icon:"briefcase.fill",url:`${j}/jobs`},{id:"inbox",label:"Inbox",icon:"tray.full.fill",url:`${j}/inbox`},{id:"queries",label:"Queries",icon:"magnifyingglass.circle.fill",url:`${j}/queries`},{id:"notifications",label:"Notifications",icon:"bell.fill",url:`${j}/notifications/dashboard`},...B(j,F,"system",new Set)]});let Z=[];if(K.dashboard)Z.push({id:"data-dashboard",label:"Dashboard",icon:"gauge.with.dots.needle.33percent",url:`${j}/data/dashboard`});if(K.activity)Z.push({id:"activity",label:"Activity",icon:"waveform.path.ecg",url:`${j}/data/activity`});if(K.users)Z.push({id:"users",label:"Users",icon:"person.crop.circle.fill",url:`${j}/data/users`});if(K.teams)Z.push({id:"teams",label:"Teams",icon:"person.3.fill",url:`${j}/data/teams`});if(K.subscribers)Z.push({id:"subscribers",label:"Subscribers",icon:"envelope.fill",url:`${j}/data/subscribers`});if(K.allModels)Z.push({id:"data-models",label:"All Models",icon:"square.grid.2x2.fill",url:`${j}/models`});let z=F.filter((X)=>{let q=Y(X);return q==="userland"||q==="data"}).filter((X)=>!H.has(X.id)).map((X)=>({id:`model-${X.id}`,label:X.dashboard?.label??X.name,icon:X.icon,url:`${j}/models/${X.id}`,...X.dashboard?.roles&&X.dashboard.roles.length>0?{roles:X.dashboard.roles}:{}}));if(Q.push({id:"data",title:"Data",items:[...Z,...z]}),J.commerce)Q.push({id:"commerce",title:"Commerce",items:[{id:"commerce-dashboard",label:"Dashboard",icon:"gauge.with.dots.needle.33percent",url:`${j}/commerce/dashboard`},{id:"customers",label:"Customers",icon:"person.crop.circle.fill",url:`${j}/commerce/customers`},{id:"orders",label:"Orders",icon:"list.clipboard.fill",url:`${j}/commerce/orders`},{id:"products",label:"Products",icon:"cube.box.fill",url:`${j}/commerce/products`},{id:"coupons",label:"Coupons",icon:"ticket.fill",url:`${j}/commerce/coupons`},{id:"gift-cards",label:"Gift Cards",icon:"giftcard.fill",url:`${j}/commerce/gift-cards`},{id:"payments",label:"Payments",icon:"creditcard.fill",url:`${j}/commerce/payments`},{id:"delivery",label:"Delivery",icon:"truck.box.fill",url:`${j}/commerce/delivery`},{id:"taxes",label:"Taxes",icon:"percent",url:`${j}/commerce/taxes`},...B(j,F,"commerce",new Set(["customer","order","product","coupon","gift-card","payment","review","category"]))]});if(J.marketing)Q.push({id:"marketing",title:"Marketing",items:[{id:"lists",label:"Lists",icon:"list.bullet",url:`${j}/marketing/lists`},{id:"social-posts",label:"Social Posts",icon:"clock.fill",url:`${j}/marketing/social-posts`},{id:"campaigns",label:"Campaigns",icon:"megaphone.fill",url:`${j}/marketing/campaigns`},{id:"marketing-reviews",label:"Reviews",icon:"star.fill",url:`${j}/marketing/reviews`},...B(j,F,"marketing",new Set(["campaign"]))]});if(J.analytics)Q.push({id:"analytics",title:"Analytics",items:[{id:"analytics-web",label:"Web",icon:"globe",url:`${j}/analytics/web`},{id:"analytics-blog",label:"Blog",icon:"doc.text.fill",url:`${j}/analytics/blog`},{id:"analytics-commerce",label:"Commerce",icon:"cart.fill",url:`${j}/analytics/commerce/web`},{id:"analytics-marketing",label:"Marketing",icon:"megaphone.fill",url:`${j}/analytics/marketing`}]});if(J.management)Q.push({id:"management",title:"Management",items:[{id:"cloud",label:"Cloud",icon:"cloud.fill",url:`${j}/cloud`},{id:"servers",label:"Servers",icon:"server.rack",url:`${j}/servers`},{id:"serverless",label:"Serverless",icon:"bolt.horizontal.circle.fill",url:`${j}/serverless`},{id:"dns",label:"DNS",icon:"network",url:`${j}/dns`},{id:"mailboxes",label:"Mailboxes",icon:"tray.full.fill",url:`${j}/mailboxes`},{id:"logs",label:"Logs",icon:"list.bullet.rectangle.portrait.fill",url:`${j}/logs`},{id:"kanban",label:"Kanban",icon:"rectangle.stack.fill",url:`${j}/kanban`,roles:["admin","dev"]}]});if(J.utilities)Q.push({id:"utilities",title:"Utilities",items:[{id:"buddy",label:"AI Buddy",icon:"bubble.left.and.bubble.right.fill",url:`${j}/buddy`},{id:"environment",label:"Environment",icon:"key.fill",url:`${j}/environment`},{id:"access-tokens",label:"Access Tokens",icon:"key.horizontal.fill",url:`${j}/access-tokens`},{id:"settings",label:"Settings",icon:"gear",url:`${j}/settings/billing`}]});return{sections:Q,minWidth:200,maxWidth:280}}function v(j){return`http://localhost:${j}/?native-sidebar=1`}
|
|
3
|
-
export{U as
|
|
3
|
+
export{U as ta,W as ua,H as va,A as wa,D as xa,V as ya,N as za,C as Aa,x as Ba,I as Ca,P as Da,y as Ea,v as Fa};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{G as x}from"./chunk-c0cs49hn.js";import{italic as I}from"@stacksjs/cli";import{log as W}from"@stacksjs/logging";import{path as Z}from"@stacksjs/path";import{writeTextFile as L}from"@stacksjs/storage";var P={str:"string",string:"string",varchar:"string",text:"text",longtext:"text",int:"number",integer:"number",number:"number",num:"number",bool:"boolean",boolean:"boolean",date:"date",datetime:"date",json:"json"};function U(G){if(!G)return[];let H=G.split(",").map((q)=>q.trim()).filter(Boolean),J=[];for(let q of H){let[K,O="string"]=q.split(":"),Q=K?.trim();if(!Q)continue;let B=P[O.trim().toLowerCase()]??"string";J.push({name:Q,type:B})}return J}function V(G){if(!G)return G;let H=G.toLowerCase();if(H.endsWith("s")||H.endsWith("x")||H.endsWith("z")||H.endsWith("ch")||H.endsWith("sh"))return`${G}es`;if(H.endsWith("y")&&!/[aeiou]y$/.test(H))return`${G.slice(0,-1)}ies`;return`${G}s`}function v(G){return G.replace(/(^|[-_\s])(\w)/g,(H,J,q)=>String(q).toUpperCase())}function X(G){return G.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/[-\s]+/g,"_").toLowerCase()}function Y(G){if(G.length===0)return" title: { type: 'string', fillable: true, validation: { rule: schema.string().required() } },";return G.map((H)=>{let J=H.type,q=J==="number"?"schema.number()":J==="boolean"?"schema.boolean()":J==="date"?"schema.date()":J==="json"?"schema.object({})":"schema.string()",K=J==="number"?"number":J==="boolean"?"boolean":J==="date"?"date":J==="json"?"json":"string";return` ${H.name}: { type: '${K}', fillable: true, validation: { rule: ${q} } },`}).join(`
|
|
3
3
|
`)}function _(G){if(G.length===0)return" .addColumn('title', 'varchar(255)', col => col.notNull())";return G.map((H)=>{switch(H.type){case"number":return` .addColumn('${H.name}', 'integer')`;case"boolean":return` .addColumn('${H.name}', 'boolean', col => col.defaultTo(false))`;case"text":return` .addColumn('${H.name}', 'text')`;case"date":return` .addColumn('${H.name}', 'timestamp')`;case"json":return` .addColumn('${H.name}', 'text')`;default:return` .addColumn('${H.name}', 'varchar(255)')`}}).join(`
|
|
4
4
|
`)}function D(G,H,J){let q=v(G);switch(H){case"Index":return`import { Action } from '@stacksjs/actions'
|
|
5
5
|
import ${q} from '~/app/Models/${q}'
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{sb as U}from"./chunk-h3163h5z.js";import{frameworkPath as E,join as W,path as R,projectPath as L}from"@stacksjs/path";import{existsSync as T,globSync as j,mkdirSync as I,writeFileSync as F}from"@stacksjs/storage";import{readFileSync as v}from"fs";var $=null;async function P(){if($)return $;try{$=(await import("@stacksjs/ts-md")).parseMarkdown}catch{$=(q)=>q}return $}function M(q){if(!q)return"";return $?$(q):q}async function p(){await P();let q=j(["components/*.stx","components/**/*.stx","resources/components/**/*.stx","storage/framework/defaults/resources/components/**/*.stx"],{cwd:L(),absolute:!0}),G=E("component-meta");if(!T(G))I(G,{recursive:!0});for(let X of q){let Q=R.parse(X).name,H=B(X),z=W(G,`${Q}.json`);F(z,JSON.stringify(H,null,2))}}function B(q){let G=v(q,"utf8"),X=b(G),Q=x(G),H=X?D(X):[],z=X?f(X):[],Z=h(Q);return{props:H,events:z,slots:Z}}function b(q){let G=/<script\b[^>]*\bserver\b[^>]*>([\s\S]*?)<\/script>/i.exec(q);if(G?.[1])return G[1];return/<script\b[^>]*>([\s\S]*?)<\/script>/i.exec(q)?.[1]??null}function x(q){let G=/<template\b[^>]*>([\s\S]*?)<\/template>/i.exec(q);if(G?.[1])return G[1];return q.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi,"").replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi,"")}function D(q){let G=w(q),X=S(q,G);if(!X)return[];let Q=k(X,G),H=g(q);return Q.map((z)=>{return{name:z.required?z.name:`${z.name}?`,description:M(z.description),type:z.type,default:H[z.name]??z.default??"unknown",required:z.required}})}function w(q){let G=new Map,X=/(?:export\s+)?interface\s+([A-Z][\w$]*)\s*(?:extends\s+[\w$,\s]+)?\s*\{/g,Q;while((Q=X.exec(q))!==null){let z=Q[1];if(!z)continue;let Z=Q.index+Q[0].length,Y=K(q,Z-1,"{","}");if(Y!==null)G.set(z,Y)}let H=/(?:export\s+)?type\s+([A-Z][\w$]*)\s*=\s*\{/g;while((Q=H.exec(q))!==null){let z=Q[1];if(!z)continue;let Z=Q.index+Q[0].length,Y=K(q,Z-1,"{","}");if(Y!==null)G.set(z,Y)}return G}function S(q,G){let Q=/defineProps\s*<\s*([\s\S]+?)\s*>\s*\(/.exec(q),H=Q?.[1]?.trim();if(!Q||!H)return null;if(H.startsWith("{")){let Z=q.indexOf("{",Q.index);return K(q,Z,"{","}")}let z=H.replace(/[<>(].*$/,"").split("&")[0]?.trim();if(!z)return null;return G.get(z)??null}function k(q,G){let X=[],Q=N(q,[";",`
|
|
3
3
|
`]),H="";for(let z of Q){let Z=z.trim();if(!Z)continue;let Y=/^\/\*\*([\s\S]*?)\*\/\s*([\s\S]*)$/.exec(Z);if(Y){H=(Y[1]??"").split(`
|
|
4
4
|
`).map((A)=>A.replace(/^\s*\*\s?/,"")).join(`
|
|
5
5
|
`).trim();let C=(Y[2]??"").trim();if(!C)continue;let J=V(C,H,G);if(J)X.push(J);H="";continue}if(Z.startsWith("//")){H=Z.replace(/^\/\/\s?/,"");continue}let _=V(Z,H,G);if(_)X.push(_);H=""}return X}function V(q,G,X){if(/^[a-zA-Z_$][\w$]*\s*\(/.test(q.trimStart()))return null;let Q=/^([a-zA-Z_$][\w$]*)\s*(\??)\s*:\s*([\s\S]+?)\s*[;,]?\s*$/.exec(q);if(!Q)return null;let H=Q[1],z=Q[2]??"",Z=Q[3];if(!H||!Z)return null;return{name:H,type:O(Z),required:z!=="?",description:G}}function g(q){let G={},X=/const\s*\{\s*([\s\S]*?)\s*\}\s*=\s*(?:withDefaults\s*\(\s*)?defineProps/g,Q;while((Q=X.exec(q))!==null)if(Q[1])y(Q[1],G);let H=q.indexOf("withDefaults(");if(H>=0){let z=q.indexOf("defineProps",H);if(z>0){let Z=q.indexOf(">",z),Y=q.indexOf(")",Z>=0?Z:z);if(Y>0){let _=q.indexOf(",",Y),C=_>=0?q.indexOf("{",_):-1;if(C>0){let J=K(q,C,"{","}");if(J)u(J,G)}}}}return G}function y(q,G){for(let X of N(q,[","])){let Q=/^\s*([a-zA-Z_$][\w$]*)\s*=\s*([\s\S]+?)\s*$/.exec(X),H=Q?.[1],z=Q?.[2];if(H&&z)G[H]=O(z)}}function u(q,G){for(let X of N(q,[","])){let Q=/^\s*([a-zA-Z_$][\w$]*)\s*:\s*([\s\S]+?)\s*$/.exec(X.trim()),H=Q?.[1],z=Q?.[2];if(H&&z)G[H]=O(z)}}function f(q){let G=/defineEmits\s*<\s*\{([\s\S]*?)\}\s*>\s*\(/.exec(q);if(!G?.[1])return[];let X=[];for(let Q of N(G[1],[";",`
|
|
6
6
|
`])){let H=Q.trim();if(!H)continue;let z=/^['"]?([\w-]+)['"]?\s*:\s*\[(.*?)\]\s*$/.exec(H);if(z){let Y=z[1];if(!Y)continue;X.push({name:Y,type:z[2]?.trim()||"void",description:""});continue}let Z=/^([a-zA-Z_$][\w$]*)\s*\(([\s\S]*?)\)\s*:\s*([\s\S]+)$/.exec(H);if(Z){let Y=Z[1];if(!Y)continue;X.push({name:Y,type:Z[2]?.trim()||"void",description:""})}}return X}function h(q){let G=[],X=new Set,Q=/<slot\b([^>]*)>/g,H;while((H=Q.exec(q))!==null){let z=H[1]??"",Y=/\bname\s*=\s*["']([^"']+)["']/.exec(z)?.[1]??"default";if(X.has(Y))continue;X.add(Y),G.push({name:Y,description:""})}return G}function K(q,G,X,Q){if(q[G]!==X)return null;let H=0,z=G,Z=null;while(z<q.length){let Y=q[z];if(Y===void 0)break;if(Z){if(Y==="\\"){z+=2;continue}if(Y===Z)Z=null;z++;continue}if(Y==='"'||Y==="'"||Y==="`"){Z=Y,z++;continue}if(Y===X)H++;else if(Y===Q){if(H--,H===0)return q.slice(G+1,z)}z++}return null}function N(q,G){let X=[],Q=new Set(G),H=0,z=null,Z=0;for(let Y=0;Y<q.length;Y++){let _=q[Y];if(_===void 0)break;if(z){if(_==="\\"){Y++;continue}if(_===z)z=null;continue}if(_==='"'||_==="'"||_==="`"){z=_;continue}if(_==="{"||_==="["||_==="("||_==="<")H++;else if(_==="}"||_==="]"||_===")"||_===">")H--;else if(H===0&&Q.has(_))X.push(q.slice(Z,Y)),Z=Y+1}return X.push(q.slice(Z)),X}function O(q){return q.replace(/\s+/g," ").trim()}
|
|
7
|
-
export{p as
|
|
7
|
+
export{p as la,B as ma};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{v as
|
|
2
|
+
import{gb as o}from"./chunk-bbd6n9q2.js";import{Action as r}from"@stacksjs/enums";async function v(e){await o(r.Dev,e)}async function s(e){await o(r.Dev,e)}async function a(e){await n(e)}async function n(e){await o(r.DevApi,e)}async function D(e){await o(r.DevComponents,e)}async function p(e){await o(r.DevDashboard,e)}async function c(e){await o(r.DevSystemTray,e)}async function m(e){await o(r.DevDesktop,e)}async function u(e){await o(r.DevDocs,e)}
|
|
3
|
+
export{v as Ga,s as Ha,a as Ia,n as Ja,D as Ka,p as La,c as Ma,m as Na,u as Oa};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-
|
|
2
|
+
import"./chunk-h3163h5z.js";var q={type:"aws",useLoadBalancer:!0,app:{name:"app-server-1",domain:"stacksjs.com",region:"us-east-1",type:"app",size:"t3.micro",diskSize:20,serverOS:"ubuntu-20-lts-x86_64",bunVersion:"1.1.26",database:"sqlite",databaseName:"stacks"},app2:{name:"app-server-2",domain:"stacksjs.com",instanceType:"t3.micro",userData:`#!/bin/bash
|
|
3
3
|
echo "Hello World from App Server 2!" > /tmp/test.txt
|
|
4
4
|
chown ubuntu:ubuntu /tmp/test.txt
|
|
5
5
|
`},web:{name:"web-server",domain:"ow3.org",region:"us-east-1",type:"web",size:"t3.micro",diskSize:20,serverOS:"ubuntu-20-lts-x86_64",bunVersion:"1.1.26"},cache:{name:"cache-server",domain:"stacksjs.com",region:"us-east-1",type:"cache",size:"t3.micro",diskSize:20,serverOS:"ubuntu-20-lts-x86_64",bunVersion:"1.1.26"}};import{env as m}from"@stacksjs/env";var C={project:{name:"stacks",slug:"stacks",region:"us-east-1"},cloud:{provider:"hetzner"},mode:"server",environments:{production:{type:"production",deployBranch:"main",region:"us-east-1",variables:{NODE_ENV:"production",LOG_LEVEL:"info"}},staging:{type:"staging",deployBranch:"stage",domainPrefix:"staging",region:"us-east-1",variables:{NODE_ENV:"staging",LOG_LEVEL:"debug"}},development:{type:"development",deployBranch:"dev",domainPrefix:"dev",region:"us-east-1",variables:{NODE_ENV:"development",LOG_LEVEL:"debug"}}},infrastructure:{compute:{instances:1,size:"small",disk:{size:20,type:"ssd",encrypted:!0},webServer:"rpx",proxy:{engine:"rpx",onDemandTls:!0,onDemandTlsEmail:"hello@stacksjs.com"}},servers:{app:q.app},containers:{api:{cpu:512,memory:1024,port:3000,healthCheck:"/health",desiredCount:2,autoScaling:{min:1,max:10,targetCpuUtilization:70,targetMemoryUtilization:80}}},loadBalancer:{enabled:!0,type:"application",healthCheck:{path:"/health",interval:30,healthyThreshold:2,unhealthyThreshold:5}},ssl:{enabled:!0,provider:"acm",domains:m.SSL_DOMAINS?.split(",")||["stacksjs.com","www.stacksjs.com"],redirectHttp:!0,letsEncrypt:{email:m.LETSENCRYPT_EMAIL||"admin@stacksjs.com",staging:!1,autoRenew:!0}},dns:{domain:m.APP_DOMAIN||"stacksjs.com",hostedZoneId:m.AWS_HOSTED_ZONE_ID||"Z01455702Q7952O6RCY37"},storage:{public:{public:!0,encryption:!0,versioning:!0,website:{indexDocument:"index.html",errorDocument:"index.html"}},private:{encryption:!0,versioning:!0},docs:{public:!0,encryption:!0,versioning:!0,path:"/docs",pathRewriteStyle:"flat",website:{indexDocument:"index.html",errorDocument:"404.html"}},blog:{public:!0,encryption:!0,versioning:!0,path:"/blog",website:{indexDocument:"index.html",errorDocument:"404.html"}},logs:{encryption:!0,versioning:!1},backups:{encryption:!0,versioning:!0},email:{public:!1,encryption:!0,versioning:!1}},functions:{},queues:{jobs:{visibilityTimeout:120,deadLetterQueue:!0,maxReceiveCount:3}},databases:{},cdn:{},monitoring:{}},sites:{main:{root:".",path:"/",domain:m.APP_DOMAIN||"stacksjs.com",start:"bun --conditions development storage/framework/core/buddy/src/cli.ts serve",port:3000,preStart:["bun install"]},api:{root:".",start:"bun --conditions development storage/framework/core/actions/src/serve/api.ts",port:3008,preStart:["bun install"],env:{HOST:"127.0.0.1",APP_ENV:"production"}},docs:{deploy:"server",root:"dist/docs/.bunpress",path:"/docs",domain:m.APP_DOMAIN||"stacksjs.com",build:"bunx @stacksjs/bunpress build --dir ./docs --outdir ./dist/docs",pathRewriteStyle:"directory"},blog:{deploy:"server",root:"dist/blog",path:"/blog",domain:m.APP_DOMAIN||"stacksjs.com",build:`bun -e "const {buildBlog}=await import('./storage/framework/core/actions/src/blog'); await buildBlog({outDir:'./dist/blog', baseUrl: (process.env.APP_URL?(/^https?:/.test(process.env.APP_URL)?process.env.APP_URL:'https://'+process.env.APP_URL):'https://stacksjs.com')})"`,pathRewriteStyle:"directory"},wwwStacksjs:{domain:"www.stacksjs.com",redirect:"https://stacksjs.com"}}},w={},E=w;export{C as tsCloud,E as default};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import E from"process";import{log as B}from"@stacksjs/cli";import{execSync as I}from"child_process";import{runFormat as J,runLint as M}from"pickier";var N=/\.(?:ts|js|json|md|yaml|yml)$/i,O=/(?:^|\/)(?:node_modules|dist|pantry|storage\/framework\/cache|\.git|\.stx|\.stx-serve)(?:\/|$)/;function G(q){try{return I("git ls-files -z",{cwd:q,encoding:"utf8"}).split("\x00").filter((z)=>N.test(z)&&!O.test(z))}catch{return[]}}async function Q(q={}){let z=q.cwd??E.cwd();B.info(q.fix?"Ensuring Code Style...":"Checking Code Style...");let A=G(z);if(!A.length)return B.success("Linted"),{ok:!0};let C=await M(A,{maxWarnings:9999,fix:q.fix})===0;if(C)B.success("Linted");return{ok:C}}function W(q={}){return Q({...q,fix:!0})}async function X(q={}){let z=q.cwd??E.cwd(),A=G(z);if(!A.length)return{ok:!0};return{ok:await J(A,{write:q.write,check:q.check})===0}}
|
|
3
|
+
export{Q as ga,W as ha,X as ia};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{T as
|
|
2
|
+
import{cb as z}from"./chunk-h10aj7jf.js";import{gb as U}from"./chunk-bbd6n9q2.js";import{sb as O}from"./chunk-h3163h5z.js";import*as Q from"fs";import R from"process";import{runCommand as b}from"@stacksjs/cli";import{Action as Y,NpmScript as H}from"@stacksjs/enums";import{log as B}from"@stacksjs/logging";import{frameworkPath as I,projectPath as K,storagePath as D}from"@stacksjs/path";import{ExitCode as X}from"@stacksjs/types";import{runNpmScript as M}from"@stacksjs/utils";async function T(q){if(q?.types)await W(q);else if(q?.entries)await V(q);else if(q?.webTypes)await v(q);else if(q?.customData)await y();else if(q?.ideHelpers)await E(q);else if(q?.componentMeta)await N();else if(q?.coreSymlink)await x();else if(q?.openApiSpec)await S()}function u(q){return T(q)}async function V(q){let F=await U(Y.GenerateLibraryEntries,{...q,cwd:K()});if(F.isErr)B.error("There was an error generating your library entry points",F.error),R.exit(X.FatalError);B.success("Library entry points generated successfully")}async function v(q){let F=await M(H.GenerateWebTypes,q);if(F.isErr)B.error("There was an error generating the web-types.json file.",F.error),R.exit(X.FatalError);B.success("Successfully generated the web-types.json file")}async function y(){let q=await z();if(q.isErr)B.error("There was an error generating the custom-elements.json file.",q.error),R.exit(X.FatalError);await U(Y.LintFix,{verbose:!0,cwd:K()}),B.success("Successfully generated the custom-elements.json file")}async function E(q){let F=await M(H.GenerateIdeHelpers,q);if(F.isErr)B.error("There was an error generating IDE helpers.",F.error),R.exit(X.FatalError);await U(Y.LintFix,{verbose:!0,cwd:K()}),B.success("Successfully generated IDE helpers")}async function N(){let q=await z();if(q.isErr)B.error("There was an error generating your component meta information.",q.error),R.exit(X.FatalError);await U(Y.LintFix,{verbose:!0,cwd:K()}),B.success("Successfully generated component meta information")}async function W(q){let F=await M(H.GenerateTypes,{cwd:I(),...q});if(F.isErr)throw B.error("There was an error generating your types.",F.error),F.error instanceof Error?F.error:Error(String(F.error));B.success("Types were generated successfully")}async function c(q){try{let G=`${I()}/package.json`,J=Q.existsSync(G)?Q.readFileSync(G,"utf-8"):"";if(!(J?JSON.parse(J):{})?.scripts?.["generate:types"]){B.warn("[generate:types --watch] no `generate:types` script in framework package.json \u2014 type regeneration disabled. dev:api will keep running, but type definitions won't auto-refresh on model/config changes.");return}}catch{}let F=[K("app/Models"),D("framework/defaults/app/Models"),K("config"),K("database/migrations")];B.info(`[generate:types --watch] watching ${F.length} directories`);let Z=null,_=!1,L=()=>{if(Z)clearTimeout(Z);Z=setTimeout(async()=>{if(_)return;_=!0;try{B.info("[generate:types --watch] change detected, regenerating\u2026"),await W(q),B.success("[generate:types --watch] types up to date")}catch(G){B.error("[generate:types --watch] regeneration failed:",G)}finally{_=!1}},200)},$=[];for(let G of F)try{if(!Q.existsSync(G))continue;let J=Q.watch(G,{recursive:!0},()=>L());$.push(J)}catch(J){B.warn(`[generate:types --watch] cannot watch ${G}: ${J}`)}if($.length===0){B.warn("[generate:types --watch] no directories to watch \u2014 exiting");return}await new Promise((G)=>{R.once("SIGINT",()=>{B.info("[generate:types --watch] stopping");for(let J of $)try{J.close()}catch{}G()})})}function g(){B.success("Successfully generated `./pantry.yaml` based on your config")}async function l(){}async function x(){await b(`ln -s ${I()} ${K(".stacks")}`)}async function S(){let{generateOpenApi:q}=await import("@stacksjs/api");await q(),B.success("Successfully generated Open API Spec")}
|
|
3
|
+
export{T as Ra,u as Sa,V as Ta,v as Ua,y as Va,E as Wa,N as Xa,W as Ya,c as Za,g as _a,l as $a,x as ab,S as bb};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{qb as N,sb as f}from"./chunk-h3163h5z.js";var bX=N((QS,uX)=>{var GB=typeof process==="object"&&process&&process.platform==="win32";uX.exports=GB?{sep:"\\"}:{sep:"/"}});var R4=N((JS,pX)=>{pX.exports=dX;function dX(X,Q,J){if(X instanceof RegExp)X=mX(X,J);if(Q instanceof RegExp)Q=mX(Q,J);var K=cX(X,Q,J);return K&&{start:K[0],end:K[1],pre:J.slice(0,K[0]),body:J.slice(K[0]+X.length,K[1]),post:J.slice(K[1]+Q.length)}}function mX(X,Q){var J=Q.match(X);return J?J[0]:null}dX.range=cX;function cX(X,Q,J){var K,Y,H,Z,q,V=J.indexOf(X),W=J.indexOf(Q,V+1),G=V;if(V>=0&&W>0){if(X===Q)return[V,W];K=[],H=J.length;while(G>=0&&!q){if(G==V)K.push(G),V=J.indexOf(X,G+1);else if(K.length==1)q=[K.pop(),W];else{if(Y=K.pop(),Y<H)H=Y,Z=W;W=J.indexOf(Q,G+1)}G=V<W&&V>=0?V:W}if(K.length)q=[H,Z]}return q}});var tX=N((KS,aX)=>{var lX=R4();aX.exports=BB;var nX="\x00SLASH"+Math.random()+"\x00",iX="\x00OPEN"+Math.random()+"\x00",S4="\x00CLOSE"+Math.random()+"\x00",oX="\x00COMMA"+Math.random()+"\x00",rX="\x00PERIOD"+Math.random()+"\x00";function E4(X){return parseInt(X,10)==X?parseInt(X,10):X.charCodeAt(0)}function WB(X){return X.split("\\\\").join(nX).split("\\{").join(iX).split("\\}").join(S4).split("\\,").join(oX).split("\\.").join(rX)}function zB(X){return X.split(nX).join("\\").split(iX).join("{").split(S4).join("}").split(oX).join(",").split(rX).join(".")}function sX(X){if(!X)return[""];var Q=[],J=lX("{","}",X);if(!J)return X.split(",");var{pre:K,body:Y,post:H}=J,Z=K.split(",");Z[Z.length-1]+="{"+Y+"}";var q=sX(H);if(H.length)Z[Z.length-1]+=q.shift(),Z.push.apply(Z,q);return Q.push.apply(Q,Z),Q}function BB(X,Q){if(!X)return[];Q=Q||{};var J=Q.max==null?1/0:Q.max;if(X.substr(0,2)==="{}")X="\\{\\}"+X.substr(2);return B8(WB(X),J,!0).map(zB)}function $B(X){return"{"+X+"}"}function MB(X){return/^-?0\d/.test(X)}function FB(X,Q){return X<=Q}function NB(X,Q){return X>=Q}function B8(X,Q,J){var K=[],Y=lX("{","}",X);if(!Y)return[X];var H=Y.pre,Z=Y.post.length?B8(Y.post,Q,!1):[""];if(/\$$/.test(Y.pre))for(var q=0;q<Z.length&&q<Q;q++){var V=H+"{"+Y.body+"}"+Z[q];K.push(V)}else{var W=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(Y.body),G=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(Y.body),B=W||G,F=Y.body.indexOf(",")>=0;if(!B&&!F){if(Y.post.match(/,(?!,).*\}/))return X=Y.pre+"{"+Y.body+S4+Y.post,B8(X,Q,!0);return[X]}var M;if(B)M=Y.body.split(/\.\./);else if(M=sX(Y.body),M.length===1){if(M=B8(M[0],Q,!1).map($B),M.length===1)return Z.map(function(y){return Y.pre+M[0]+y})}var I;if(B){var P=E4(M[0]),O=E4(M[1]),L=Math.max(M[0].length,M[1].length),x=M.length==3?Math.max(Math.abs(E4(M[2])),1):1,v=FB,g=O<P;if(g)x*=-1,v=NB;var n=M.some(MB);I=[];for(var k=P;v(k,O);k+=x){var D;if(G){if(D=String.fromCharCode(k),D==="\\")D=""}else if(D=String(k),n){var m=L-D.length;if(m>0){var T=Array(m+1).join("0");if(k<0)D="-"+T+D.slice(1);else D=T+D}}I.push(D)}}else{I=[];for(var S=0;S<M.length;S++)I.push.apply(I,B8(M[S],Q,!1))}for(var S=0;S<I.length;S++)for(var q=0;q<Z.length&&K.length<Q;q++){var V=H+I[S]+Z[q];if(!J||B||V)K.push(V)}}return K}});var YQ=N((YS,g4)=>{var i0=g4.exports=(X,Q,J={})=>{if(k3(Q),!J.nocomment&&Q.charAt(0)==="#")return!1;return new $8(Q,J).match(X)};g4.exports=i0;var y4=bX();i0.sep=y4.sep;var b0=Symbol("globstar **");i0.GLOBSTAR=b0;var LB=tX(),eX={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},k4="[^/]",x4=k4+"*?",CB="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",IB="(?:(?!(?:\\/|^)\\.).)*?",JQ=(X)=>X.split("").reduce((Q,J)=>{return Q[J]=!0,Q},{}),XQ=JQ("().*{}+?[]^$\\!"),OB=JQ("[.("),QQ=/\/+/;i0.filter=(X,Q={})=>(J,K,Y)=>i0(J,X,Q);var y1=(X,Q={})=>{let J={};return Object.keys(X).forEach((K)=>J[K]=X[K]),Object.keys(Q).forEach((K)=>J[K]=Q[K]),J};i0.defaults=(X)=>{if(!X||typeof X!=="object"||!Object.keys(X).length)return i0;let Q=i0,J=(K,Y,H)=>Q(K,Y,y1(X,H));return J.Minimatch=class extends Q.Minimatch{constructor(Y,H){super(Y,y1(X,H))}},J.Minimatch.defaults=(K)=>Q.defaults(y1(X,K)).Minimatch,J.filter=(K,Y)=>Q.filter(K,y1(X,Y)),J.defaults=(K)=>Q.defaults(y1(X,K)),J.makeRe=(K,Y)=>Q.makeRe(K,y1(X,Y)),J.braceExpand=(K,Y)=>Q.braceExpand(K,y1(X,Y)),J.match=(K,Y,H)=>Q.match(K,Y,y1(X,H)),J};i0.braceExpand=(X,Q)=>KQ(X,Q);var KQ=(X,Q={})=>{if(k3(X),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(X))return[X];return LB(X)},PB=65536,k3=(X)=>{if(typeof X!=="string")throw TypeError("invalid pattern");if(X.length>PB)throw TypeError("pattern is too long")},v4=Symbol("subparse");i0.makeRe=(X,Q)=>new $8(X,Q||{}).makeRe();i0.match=(X,Q,J={})=>{let K=new $8(Q,J);if(X=X.filter((Y)=>K.match(Y)),K.options.nonull&&!X.length)X.push(Q);return X};var jB=(X)=>X.replace(/\\(.)/g,"$1"),wB=(X)=>X.replace(/\\([^-\]])/g,"$1"),DB=(X)=>X.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),TB=(X)=>X.replace(/[[\]\\]/g,"\\$&");class $8{constructor(X,Q){if(k3(X),!Q)Q={};if(this.options=Q,this.maxGlobstarRecursion=Q.maxGlobstarRecursion!==void 0?Q.maxGlobstarRecursion:200,this.set=[],this.pattern=X,this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.make()}debug(){}make(){let X=this.pattern,Q=this.options;if(!Q.nocomment&&X.charAt(0)==="#"){this.comment=!0;return}if(!X){this.empty=!0;return}this.parseNegate();let J=this.globSet=this.braceExpand();if(Q.debug)this.debug=(...K)=>console.error(...K);this.debug(this.pattern,J),J=this.globParts=J.map((K)=>K.split(QQ)),this.debug(this.pattern,J),J=J.map((K,Y,H)=>K.map(this.parse,this)),this.debug(this.pattern,J),J=J.filter((K)=>K.indexOf(!1)===-1),this.debug(this.pattern,J),this.set=J}parseNegate(){if(this.options.nonegate)return;let X=this.pattern,Q=!1,J=0;for(let K=0;K<X.length&&X.charAt(K)==="!";K++)Q=!Q,J++;if(J)this.pattern=X.slice(J);this.negate=Q}matchOne(X,Q,J){if(Q.indexOf(b0)!==-1)return this._matchGlobstar(X,Q,J,0,0);return this._matchOne(X,Q,J,0,0)}_matchGlobstar(X,Q,J,K,Y){let H=-1;for(let L=Y;L<Q.length;L++)if(Q[L]===b0){H=L;break}let Z=-1;for(let L=Q.length-1;L>=0;L--)if(Q[L]===b0){Z=L;break}let q=Q.slice(Y,H),V=J?Q.slice(H+1):Q.slice(H+1,Z),W=J?[]:Q.slice(Z+1);if(q.length){let L=X.slice(K,K+q.length);if(!this._matchOne(L,q,J,0,0))return!1;K+=q.length}let G=0;if(W.length){if(W.length+K>X.length)return!1;let L=X.length-W.length;if(this._matchOne(X,W,J,L,0))G=W.length;else{if(X[X.length-1]!==""||K+W.length===X.length)return!1;if(!this._matchOne(X,W,J,L-1,0))return!1;G=W.length+1}}if(!V.length){let L=!!G;for(let x=K;x<X.length-G;x++){let v=String(X[x]);if(L=!0,v==="."||v===".."||!this.options.dot&&v.charAt(0)===".")return!1}return J||L}let B=[[[],0]],F=B[0],M=0,I=[0];for(let L of V)if(L===b0)I.push(M),F=[[],0],B.push(F);else F[0].push(L),M++;let P=B.length-1,O=X.length-G;for(let L of B)L[1]=O-(I[P--]+L[0].length);return!!this._matchGlobStarBodySections(X,B,K,0,J,0,!!G)}_matchGlobStarBodySections(X,Q,J,K,Y,H,Z){let q=Q[K];if(!q){for(let G=J;G<X.length;G++){Z=!0;let B=X[G];if(B==="."||B===".."||!this.options.dot&&B.charAt(0)===".")return!1}return Z}let[V,W]=q;while(J<=W){if(this._matchOne(X.slice(0,J+V.length),V,Y,J,0)&&H<this.maxGlobstarRecursion){let F=this._matchGlobStarBodySections(X,Q,J+V.length,K+1,Y,H+1,Z);if(F!==!1)return F}let B=X[J];if(B==="."||B===".."||!this.options.dot&&B.charAt(0)===".")return!1;J++}return Y||null}_matchOne(X,Q,J,K,Y){let H,Z,q,V;for(H=K,Z=Y,q=X.length,V=Q.length;H<q&&Z<V;H++,Z++){this.debug("matchOne loop");let W=Q[Z],G=X[H];if(this.debug(Q,W,G),W===!1||W===b0)return!1;let B;if(typeof W==="string")B=G===W,this.debug("string match",W,G,B);else B=G.match(W),this.debug("pattern match",W,G,B);if(!B)return!1}if(H===q&&Z===V)return!0;else if(H===q)return J;else if(Z===V)return H===q-1&&X[H]==="";throw Error("wtf?")}braceExpand(){return KQ(this.pattern,this.options)}parse(X,Q){k3(X);let J=this.options;if(X==="**")if(!J.noglobstar)return b0;else X="*";if(X==="")return"";let K="",Y=!1,H=!1,Z=[],q=[],V,W=!1,G=-1,B=-1,F,M,I,P=X.charAt(0)===".",O=J.dot||P,L=()=>P?"":O?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",x=(k)=>k.charAt(0)==="."?"":J.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",v=()=>{if(V){switch(V){case"*":K+=x4,Y=!0;break;case"?":K+=k4,Y=!0;break;default:K+="\\"+V;break}this.debug("clearStateChar %j %j",V,K),V=!1}};for(let k=0,D;k<X.length&&(D=X.charAt(k));k++){if(this.debug("%s\t%s %s %j",X,k,K,D),H){if(D==="/")return!1;if(XQ[D])K+="\\";K+=D,H=!1;continue}switch(D){case"/":return!1;case"\\":if(W&&X.charAt(k+1)==="-"){K+=D;continue}v(),H=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",X,k,K,D),W){if(this.debug(" in class"),D==="!"&&k===B+1)D="^";K+=D;continue}if(D==="*"&&V==="*")continue;if(this.debug("call clearStateChar %j",V),v(),V=D,J.noext)v();continue;case"(":{if(W){K+="(";continue}if(!V){K+="\\(";continue}let m={type:V,start:k-1,reStart:K.length,open:eX[V].open,close:eX[V].close};if(this.debug(this.pattern,"\t",m),Z.push(m),K+=m.open,m.start===0&&m.type!=="!")P=!0,K+=x(X.slice(k+1));this.debug("plType %j %j",V,K),V=!1;continue}case")":{let m=Z[Z.length-1];if(W||!m){K+="\\)";continue}if(Z.pop(),v(),Y=!0,M=m,K+=M.close,M.type==="!")q.push(Object.assign(M,{reEnd:K.length}));continue}case"|":{let m=Z[Z.length-1];if(W||!m){K+="\\|";continue}if(v(),K+="|",m.start===0&&m.type!=="!")P=!0,K+=x(X.slice(k+1));continue}case"[":if(v(),W){K+="\\"+D;continue}W=!0,B=k,G=K.length,K+=D;continue;case"]":if(k===B+1||!W){K+="\\"+D;continue}F=X.substring(B+1,k);try{RegExp("["+TB(wB(F))+"]"),K+=D}catch(m){K=K.substring(0,G)+"(?:$.)"}Y=!0,W=!1;continue;default:if(v(),XQ[D]&&!(D==="^"&&W))K+="\\";K+=D;break}}if(W)F=X.slice(B+1),I=this.parse(F,v4),K=K.substring(0,G)+"\\["+I[0],Y=Y||I[1];for(M=Z.pop();M;M=Z.pop()){let k;k=K.slice(M.reStart+M.open.length),this.debug("setting tail",K,M),k=k.replace(/((?:\\{2}){0,64})(\\?)\|/g,(m,T,S)=>{if(!S)S="\\";return T+T+S+"|"}),this.debug(`tail=%j
|
|
3
3
|
%s`,k,k,M,K);let D=M.type==="*"?x4:M.type==="?"?k4:"\\"+M.type;Y=!0,K=K.slice(0,M.reStart)+D+"\\("+k}if(v(),H)K+="\\\\";let g=OB[K.charAt(0)];for(let k=q.length-1;k>-1;k--){let D=q[k],m=K.slice(0,D.reStart),T=K.slice(D.reStart,D.reEnd-8),S=K.slice(D.reEnd),y=K.slice(D.reEnd-8,D.reEnd)+S,l=m.split(")").length,t=m.split("(").length-l,X0=S;for(let Y0=0;Y0<t;Y0++)X0=X0.replace(/\)[+*?]?/,"");S=X0;let z0=S===""&&Q!==v4?"(?:$|\\/)":"";K=m+T+S+z0+y}if(K!==""&&Y)K="(?=.)"+K;if(g)K=L()+K;if(Q===v4)return[K,Y];if(J.nocase&&!Y)Y=X.toUpperCase()!==X.toLowerCase();if(!Y)return jB(X);let n=J.nocase?"i":"";try{return Object.assign(new RegExp("^"+K+"$",n),{_glob:X,_src:K})}catch(k){return new RegExp("$.")}}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let X=this.set;if(!X.length)return this.regexp=!1,this.regexp;let Q=this.options,J=Q.noglobstar?x4:Q.dot?CB:IB,K=Q.nocase?"i":"",Y=X.map((H)=>{return H=H.map((Z)=>typeof Z==="string"?DB(Z):Z===b0?b0:Z._src).reduce((Z,q)=>{if(!(Z[Z.length-1]===b0&&q===b0))Z.push(q);return Z},[]),H.forEach((Z,q)=>{if(Z!==b0||H[q-1]===b0)return;if(q===0)if(H.length>1)H[q+1]="(?:\\/|"+J+"\\/)?"+H[q+1];else H[q]=J;else if(q===H.length-1)H[q-1]+="(?:\\/|"+J+")?";else H[q-1]+="(?:\\/|\\/"+J+"\\/)"+H[q+1],H[q+1]=b0}),H.filter((Z)=>Z!==b0).join("/")}).join("|");if(Y="^(?:"+Y+")$",this.negate)Y="^(?!"+Y+").*$";try{this.regexp=new RegExp(Y,K)}catch(H){this.regexp=!1}return this.regexp}match(X,Q=this.partial){if(this.debug("match",X,this.pattern),this.comment)return!1;if(this.empty)return X==="";if(X==="/"&&Q)return!0;let J=this.options;if(y4.sep!=="/")X=X.split(y4.sep).join("/");X=X.split(QQ),this.debug(this.pattern,"split",X);let K=this.set;this.debug(this.pattern,"set",K);let Y;for(let H=X.length-1;H>=0;H--)if(Y=X[H],Y)break;for(let H=0;H<K.length;H++){let Z=K[H],q=X;if(J.matchBase&&Z.length===1)q=[Y];if(this.matchOne(q,Z,Q)){if(J.flipNegate)return!0;return!this.negate}}if(J.flipNegate)return!1;return this.negate}static defaults(X){return i0.defaults(X).Minimatch}}i0.Minimatch=$8});var UQ=N((HS,VQ)=>{VQ.exports=qQ;var f4=f("fs"),{EventEmitter:_B}=f("events"),{Minimatch:h4}=YQ(),{resolve:AB}=f("path");function RB(X,Q){return new Promise((J,K)=>{f4.readdir(X,{withFileTypes:!0},(Y,H)=>{if(Y)switch(Y.code){case"ENOTDIR":if(Q)K(Y);else J([]);break;case"ENOTSUP":case"ENOENT":case"ENAMETOOLONG":case"UNKNOWN":J([]);break;case"ELOOP":default:K(Y);break}else J(H)})})}function HQ(X,Q){return new Promise((J,K)=>{(Q?f4.stat:f4.lstat)(X,(H,Z)=>{if(H)switch(H.code){case"ENOENT":if(Q)J(HQ(X,!1));else J(null);break;default:J(null);break}else J(Z)})})}async function*ZQ(X,Q,J,K,Y,H){let Z=await RB(Q+X,H);for(let q of Z){let V=q.name;if(V===void 0)V=q,K=!0;let W=X+"/"+V,G=W.slice(1),B=Q+"/"+G,F=null;if(K||J)F=await HQ(B,J);if(!F&&q.name!==void 0)F=q;if(F===null)F={isDirectory:()=>!1};if(F.isDirectory()){if(!Y(G))yield{relative:G,absolute:B,stats:F},yield*ZQ(W,Q,J,K,Y,!1)}else yield{relative:G,absolute:B,stats:F}}}async function*EB(X,Q,J,K){yield*ZQ("",X,Q,J,K,!0)}function SB(X){return{pattern:X.pattern,dot:!!X.dot,noglobstar:!!X.noglobstar,matchBase:!!X.matchBase,nocase:!!X.nocase,ignore:X.ignore,skip:X.skip,follow:!!X.follow,stat:!!X.stat,nodir:!!X.nodir,mark:!!X.mark,silent:!!X.silent,absolute:!!X.absolute}}class u4 extends _B{constructor(X,Q,J){super();if(typeof Q==="function")J=Q,Q=null;if(this.options=SB(Q||{}),this.matchers=[],this.options.pattern){let K=Array.isArray(this.options.pattern)?this.options.pattern:[this.options.pattern];this.matchers=K.map((Y)=>new h4(Y,{dot:this.options.dot,noglobstar:this.options.noglobstar,matchBase:this.options.matchBase,nocase:this.options.nocase}))}if(this.ignoreMatchers=[],this.options.ignore){let K=Array.isArray(this.options.ignore)?this.options.ignore:[this.options.ignore];this.ignoreMatchers=K.map((Y)=>new h4(Y,{dot:!0}))}if(this.skipMatchers=[],this.options.skip){let K=Array.isArray(this.options.skip)?this.options.skip:[this.options.skip];this.skipMatchers=K.map((Y)=>new h4(Y,{dot:!0}))}if(this.iterator=EB(AB(X||"."),this.options.follow,this.options.stat,this._shouldSkipDirectory.bind(this)),this.paused=!1,this.inactive=!1,this.aborted=!1,J)this._matches=[],this.on("match",(K)=>this._matches.push(this.options.absolute?K.absolute:K.relative)),this.on("error",(K)=>J(K)),this.on("end",()=>J(null,this._matches));setTimeout(()=>this._next(),0)}_shouldSkipDirectory(X){return this.skipMatchers.some((Q)=>Q.match(X))}_fileMatches(X,Q){let J=X+(Q?"/":"");return(this.matchers.length===0||this.matchers.some((K)=>K.match(J)))&&!this.ignoreMatchers.some((K)=>K.match(J))&&(!this.options.nodir||!Q)}_next(){if(!this.paused&&!this.aborted)this.iterator.next().then((X)=>{if(!X.done){let Q=X.value.stats.isDirectory();if(this._fileMatches(X.value.relative,Q)){let J=X.value.relative,K=X.value.absolute;if(this.options.mark&&Q)J+="/",K+="/";if(this.options.stat)this.emit("match",{relative:J,absolute:K,stat:X.value.stats});else this.emit("match",{relative:J,absolute:K})}this._next(this.iterator)}else this.emit("end")}).catch((X)=>{if(this.abort(),this.emit("error",X),!X.code&&!this.options.silent)console.error(X)});else this.inactive=!0}abort(){this.aborted=!0}pause(){this.paused=!0}resume(){if(this.paused=!1,this.inactive)this.inactive=!1,this._next()}}function qQ(X,Q,J){return new u4(X,Q,J)}qQ.ReaddirGlob=u4});var WQ=N((g3,GQ)=>{(function(X,Q){typeof g3==="object"&&typeof GQ<"u"?Q(g3):typeof define==="function"&&define.amd?define(["exports"],Q):(X=typeof globalThis<"u"?globalThis:X||self,Q(X.async={}))})(g3,function(X){function Q(U,...z){return(...$)=>U(...z,...$)}function J(U){return function(...z){var $=z.pop();return U.call(this,z,$)}}var K=typeof queueMicrotask==="function"&&queueMicrotask,Y=typeof setImmediate==="function"&&setImmediate,H=typeof process==="object"&&typeof process.nextTick==="function";function Z(U){setTimeout(U,0)}function q(U){return(z,...$)=>U(()=>z(...$))}var V;if(K)V=queueMicrotask;else if(Y)V=setImmediate;else if(H)V=process.nextTick;else V=Z;var W=q(V);function G(U){if(M(U))return function(...z){let $=z.pop(),C=U.apply(this,z);return B(C,$)};return J(function(z,$){var C;try{C=U.apply(this,z)}catch(j){return $(j)}if(C&&typeof C.then==="function")return B(C,$);else $(null,C)})}function B(U,z){return U.then(($)=>{F(z,null,$)},($)=>{F(z,$&&($ instanceof Error||$.message)?$:Error($))})}function F(U,z,$){try{U(z,$)}catch(C){W((j)=>{throw j},C)}}function M(U){return U[Symbol.toStringTag]==="AsyncFunction"}function I(U){return U[Symbol.toStringTag]==="AsyncGenerator"}function P(U){return typeof U[Symbol.asyncIterator]==="function"}function O(U){if(typeof U!=="function")throw Error("expected a function");return M(U)?G(U):U}function L(U,z){if(!z)z=U.length;if(!z)throw Error("arity is undefined");function $(...C){if(typeof C[z-1]==="function")return U.apply(this,C);return new Promise((j,w)=>{C[z-1]=(A,...R)=>{if(A)return w(A);j(R.length>1?R:R[0])},U.apply(this,C)})}return $}function x(U){return function($,...C){return L(function(w){var A=this;return U($,(R,E)=>{O(R).apply(A,C.concat(E))},w)})}}function v(U,z,$,C){z=z||[];var j=[],w=0,A=O($);return U(z,(R,E,b)=>{var e=w++;A(R,(H0,Q0)=>{j[e]=Q0,b(H0)})},(R)=>{C(R,j)})}function g(U){return U&&typeof U.length==="number"&&U.length>=0&&U.length%1===0}let n={};function k(U){function z(...$){if(U===null)return;var C=U;U=null,C.apply(this,$)}return Object.assign(z,U),z}function D(U){return U[Symbol.iterator]&&U[Symbol.iterator]()}function m(U){var z=-1,$=U.length;return function(){return++z<$?{value:U[z],key:z}:null}}function T(U){var z=-1;return function(){var C=U.next();if(C.done)return null;return z++,{value:C.value,key:z}}}function S(U){var z=U?Object.keys(U):[],$=-1,C=z.length;return function j(){var w=z[++$];if(w==="__proto__")return j();return $<C?{value:U[w],key:w}:null}}function y(U){if(g(U))return m(U);var z=D(U);return z?T(z):S(U)}function l(U){return function(...z){if(U===null)throw Error("Callback was already called.");var $=U;U=null,$.apply(this,z)}}function t(U,z,$,C){let j=!1,w=!1,A=!1,R=0,E=0;function b(){if(R>=z||A||j)return;A=!0,U.next().then(({value:Q0,done:a0})=>{if(w||j)return;if(A=!1,a0){if(j=!0,R<=0)C(null);return}R++,$(Q0,E,e),E++,b()}).catch(H0)}function e(Q0,a0){if(R-=1,w)return;if(Q0)return H0(Q0);if(Q0===!1){j=!0,w=!0;return}if(a0===n||j&&R<=0)return j=!0,C(null);b()}function H0(Q0){if(w)return;A=!1,j=!0,C(Q0)}b()}var X0=(U)=>{return(z,$,C)=>{if(C=k(C),U<=0)throw RangeError("concurrency limit cannot be less than 1");if(!z)return C(null);if(I(z))return t(z,U,$,C);if(P(z))return t(z[Symbol.asyncIterator](),U,$,C);var j=y(z),w=!1,A=!1,R=0,E=!1;function b(H0,Q0){if(A)return;if(R-=1,H0)w=!0,C(H0);else if(H0===!1)w=!0,A=!0;else if(Q0===n||w&&R<=0)return w=!0,C(null);else if(!E)e()}function e(){E=!0;while(R<U&&!w){var H0=j();if(H0===null){if(w=!0,R<=0)C(null);return}R+=1,$(H0.value,H0.key,l(b))}E=!1}e()}};function z0(U,z,$,C){return X0(z)(U,O($),C)}var Y0=L(z0,4);function G0(U,z,$){$=k($);var C=0,j=0,{length:w}=U,A=!1;if(w===0)$(null);function R(E,b){if(E===!1)A=!0;if(A===!0)return;if(E)$(E);else if(++j===w||b===n)$(null)}for(;C<w;C++)z(U[C],C,l(R))}function w0(U,z,$){return Y0(U,1/0,z,$)}function B0(U,z,$){var C=g(U)?G0:w0;return C(U,O(z),$)}var l0=L(B0,3);function Nz(U,z,$){return v(l0,U,z,$)}var W3=L(Nz,3),r2=x(W3);function Lz(U,z,$){return Y0(U,1,z,$)}var Z1=L(Lz,3);function Cz(U,z,$){return v(Z1,U,z,$)}var C4=L(Cz,3),s2=x(C4);let N6=Symbol("promiseCallback");function L6(){let U,z;function $(C,...j){if(C)return z(C);U(j.length>1?j:j[0])}return $[N6]=new Promise((C,j)=>{U=C,z=j}),$}function I4(U,z,$){if(typeof z!=="number")$=z,z=null;$=k($||L6());var C=Object.keys(U).length;if(!C)return $(null);if(!z)z=C;var j={},w=0,A=!1,R=!1,E=Object.create(null),b=[],e=[],H0={};Object.keys(U).forEach((u)=>{var c=U[u];if(!Array.isArray(c)){Q0(u,[c]),e.push(u);return}var J0=c.slice(0,c.length-1),N0=J0.length;if(N0===0){Q0(u,c),e.push(u);return}H0[u]=N0,J0.forEach((_0)=>{if(!U[_0])throw Error("async.auto task `"+u+"` has a non-existent dependency `"+_0+"` in "+J0.join(", "));I6(_0,()=>{if(N0--,N0===0)Q0(u,c)})})}),Z0(),a0();function Q0(u,c){b.push(()=>W8(u,c))}function a0(){if(A)return;if(b.length===0&&w===0)return $(null,j);while(b.length&&w<z){var u=b.shift();u()}}function I6(u,c){var J0=E[u];if(!J0)J0=E[u]=[];J0.push(c)}function i1(u){var c=E[u]||[];c.forEach((J0)=>J0()),a0()}function W8(u,c){if(R)return;var J0=l((_0,...t0)=>{if(w--,_0===!1){A=!0;return}if(t0.length<2)[t0]=t0;if(_0){var O6={};if(Object.keys(j).forEach((o1)=>{O6[o1]=j[o1]}),O6[u]=t0,R=!0,E=Object.create(null),A)return;$(_0,O6)}else j[u]=t0,i1(u)});w++;var N0=O(c[c.length-1]);if(c.length>1)N0(j,J0);else N0(J0)}function Z0(){var u,c=0;while(e.length)u=e.pop(),c++,d(u).forEach((J0)=>{if(--H0[J0]===0)e.push(J0)});if(c!==C)throw Error("async.auto cannot execute tasks due to a recursive dependency")}function d(u){var c=[];return Object.keys(U).forEach((J0)=>{let N0=U[J0];if(Array.isArray(N0)&&N0.indexOf(u)>=0)c.push(J0)}),c}return $[N6]}var Iz=/^(?:async\s)?(?:function)?\s*(?:\w+\s*)?\(([^)]+)\)(?:\s*{)/,Oz=/^(?:async\s)?\s*(?:\(\s*)?((?:[^)=\s]\s*)*)(?:\)\s*)?=>/,Pz=/,/,jz=/(=.+)?(\s*)$/;function wz(U){let z="",$=0,C=U.indexOf("*/");while($<U.length)if(U[$]==="/"&&U[$+1]==="/"){let j=U.indexOf(`
|
|
4
4
|
`,$);$=j===-1?U.length:j}else if(C!==-1&&U[$]==="/"&&U[$+1]==="*"){let j=U.indexOf("*/",$);if(j!==-1)$=j+2,C=U.indexOf("*/",$);else z+=U[$],$++}else z+=U[$],$++;return z}function Dz(U){let z=wz(U.toString()),$=z.match(Iz);if(!$)$=z.match(Oz);if(!$)throw Error(`could not parse args in autoInject
|
|
5
5
|
Source:
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import{installPackage as t}from"@stacksjs/cli";async function o(a){if(a?.table)await n();if(a?.calendar)await s()}async function r(a){return await o(a)}async function n(){await t("@stacksjs/table")}async function s(){await t("@stacksjs/calendar")}async function d(a){for(let i of a)await t(i)}
|
|
3
|
-
export{o as
|
|
3
|
+
export{o as kb,r as lb,n as mb,s as nb,d as ob};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var b={name:"hello-world",owner:"@stacksjs",repository:"stacksjs/stacks",license:"MIT",author:"Chris Breuer",contributors:["Chris Breuer <chris@stacksjs.com>"],defaultLanguage:"en",releaseable:!0,webComponents:{name:"hello-world-elements",description:"Your framework agnostic web component library description.",keywords:["custom-elements","web-components","library","framework-agnostic","typescript","javascript"],tags:[{name:["HelloWorld","AppHelloWorld"],description:"The Hello World custom element, built via this framework.",attributes:[{name:"greeting",description:"The greeting."}]}]},functions:{name:"hello-world-fx",description:"Your function library description.",keywords:["functions","composables","library","typescript","javascript"],shouldGenerateSourcemap:!1,files:["counter","dark"]}};
|
|
3
|
-
export{b as
|
|
3
|
+
export{b as eb};
|