@kosmojs/dev 0.2.5 β 0.2.6
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/package.json +16 -16
- package/pkg/chassis.js +2 -2
- package/pkg/chassis.js.map +1 -1
- package/pkg/index.js +10 -10
- package/pkg/index.js.map +1 -1
package/pkg/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{join as e,resolve as t}from"node:path";import{styleText as n}from"node:util";import{DEFAULT_APIBASE as r,RequestBodyTargets as i,RequestValidationTargets as a,createRouteResolver as o,createTemplateResolver as s,defaults as c}from"@kosmojs/core";import{createHonoPattern as l,createPathPattern as u,defineGenerator as d,defineGeneratorFactory as f,mergeConfigs as p,nestedRoutesFactory as m,pathResolver as h,pathTokensFactory as g,renderFactory as _,renderToFile as ee,sortRoutes as v,spinnerFactory as te,vitePlugins as y}from"@kosmojs/lib";import{routeRenderHelpers as b}from"@kosmojs/core/generators";import x from"crc/crc32";import ne from"@mdx-js/rollup";import{build as S,createFilter as C}from"vite";import re from"yaml";import{parse as ie}from"path-to-regexp";import ae from"typebox";import oe from"@vitejs/plugin-react";import w from"vite-plugin-solid";import{access as se,constants as ce,cp as T,mkdir as le,rm as E,writeFile as ue}from"node:fs/promises";import{svelte as de}from"@sveltejs/vite-plugin-svelte";import D from"@vitejs/plugin-vue";var O={type:`module`,private:!0,name:`@kosmojs/fetch-generator`,version:`0.2.
|
|
1
|
+
import{join as e,resolve as t}from"node:path";import{styleText as n}from"node:util";import{DEFAULT_APIBASE as r,RequestBodyTargets as i,RequestValidationTargets as a,createRouteResolver as o,createTemplateResolver as s,defaults as c}from"@kosmojs/core";import{createHonoPattern as l,createPathPattern as u,defineGenerator as d,defineGeneratorFactory as f,mergeConfigs as p,nestedRoutesFactory as m,pathResolver as h,pathTokensFactory as g,renderFactory as _,renderToFile as ee,sortRoutes as v,spinnerFactory as te,vitePlugins as y}from"@kosmojs/lib";import{routeRenderHelpers as b}from"@kosmojs/core/generators";import x from"crc/crc32";import ne from"@mdx-js/rollup";import{build as S,createFilter as C}from"vite";import re from"yaml";import{parse as ie}from"path-to-regexp";import ae from"typebox";import oe from"@vitejs/plugin-react";import w from"vite-plugin-solid";import{access as se,constants as ce,cp as T,mkdir as le,rm as E,writeFile as ue}from"node:fs/promises";import{svelte as de}from"@sveltejs/vite-plugin-svelte";import D from"@vitejs/plugin-vue";var O={type:`module`,private:!0,name:`@kosmojs/fetch-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/fetch-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`},devDependencies:{"path-to-regexp":`^8.4.2`}},k=`{{#each routes}}
|
|
2
2
|
import {{id}} from "{{ createImport 'libApi' name 'fetch' }}";
|
|
3
3
|
{{/each}}
|
|
4
4
|
|
|
@@ -127,7 +127,7 @@ export default {
|
|
|
127
127
|
};
|
|
128
128
|
`,j=`export type MaybeWrapped<T> = T;
|
|
129
129
|
export const unwrap = <T>(data: T) => data;
|
|
130
|
-
`,M=f((e,t)=>{let{createPath:n,createImportHelpers:r}=h(t),{renderToFile:i}=_({helpers:{...r({origin:`lib`}),...b()}}),o=async(e,t)=>{let r=e.flatMap(({kind:e,entry:t})=>e===`apiRoute`?[t]:[]).sort(v);await i(n.lib(`fetch.ts`),k,{routes:r});for(let{kind:e,entry:r}of t)if(e===`apiRoute`){let e=[];for(let t of r.validationDefinitions)if(t.target===`response`)for(let{id:n,body:r,resolvedType:i}of t.variants)r&&e.push({id:n,target:t.target,method:t.method,resolvedType:i});else{let{id:n,resolvedType:r}=t.schema;e.push({id:n,target:t.target,method:t.method,resolvedType:r})}let t=r.methods.map(t=>({method:t,responseType:e.find(e=>e.target===`response`&&e.method===t)})),o=Object.entries(e.reduce((e,{id:t,target:n,method:r,resolvedType:i})=>{if([`headers`,`cookies`,`response`].includes(n))return e;let a=`${n.replace(/^./,e=>e.toUpperCase())}T`;return e[a]||(e[a]=[]),e[a].push({id:t,target:n,method:r,resolvedType:i}),e},{})).map(([e,t])=>({name:e,types:t,target:t[0].target})),s=Object.keys(a).map(e=>({target:e,payloadType:o.find(t=>t.target===e)})),c=Object.values(e.reduce((e,{id:t,target:n,method:r,resolvedType:i})=>(n===`response`&&(e[r]||(e[r]={method:r,types:[]}),e[r].types.push({id:t,target:n,method:r,resolvedType:i})),e),{}));await i(n.libApi(r.name,`fetch.ts`),A,{route:r,validationTypes:e,routeMethods:t,payloadTypes:o,payloadTargets:s,responseTypes:c})}};return{meta:e,async start(){await i(n.lib(`unwrap.ts`),j,{})},async watch(e,t){await o(e,t?e.filter(({kind:e,entry:n})=>t.kind===`update`&&e===`apiRoute`&&n.fileFullpath===t.file):e)},async build(e){await o(e,e)}}}),N=d(()=>{let e={name:`Fetch`,slot:`fetch`,dependencies:{"path-to-regexp":O.devDependencies[`path-to-regexp`]}};return{meta:e,factory:t=>M(e,t)}}),P={type:`module`,private:!0,name:`@kosmojs/hono-generator`,version:`0.2.
|
|
130
|
+
`,M=f((e,t)=>{let{createPath:n,createImportHelpers:r}=h(t),{renderToFile:i}=_({helpers:{...r({origin:`lib`}),...b()}}),o=async(e,t)=>{let r=e.flatMap(({kind:e,entry:t})=>e===`apiRoute`?[t]:[]).sort(v);await i(n.lib(`fetch.ts`),k,{routes:r});for(let{kind:e,entry:r}of t)if(e===`apiRoute`){let e=[];for(let t of r.validationDefinitions)if(t.target===`response`)for(let{id:n,body:r,resolvedType:i}of t.variants)r&&e.push({id:n,target:t.target,method:t.method,resolvedType:i});else{let{id:n,resolvedType:r}=t.schema;e.push({id:n,target:t.target,method:t.method,resolvedType:r})}let t=r.methods.map(t=>({method:t,responseType:e.find(e=>e.target===`response`&&e.method===t)})),o=Object.entries(e.reduce((e,{id:t,target:n,method:r,resolvedType:i})=>{if([`headers`,`cookies`,`response`].includes(n))return e;let a=`${n.replace(/^./,e=>e.toUpperCase())}T`;return e[a]||(e[a]=[]),e[a].push({id:t,target:n,method:r,resolvedType:i}),e},{})).map(([e,t])=>({name:e,types:t,target:t[0].target})),s=Object.keys(a).map(e=>({target:e,payloadType:o.find(t=>t.target===e)})),c=Object.values(e.reduce((e,{id:t,target:n,method:r,resolvedType:i})=>(n===`response`&&(e[r]||(e[r]={method:r,types:[]}),e[r].types.push({id:t,target:n,method:r,resolvedType:i})),e),{}));await i(n.libApi(r.name,`fetch.ts`),A,{route:r,validationTypes:e,routeMethods:t,payloadTypes:o,payloadTargets:s,responseTypes:c})}};return{meta:e,async start(){await i(n.lib(`unwrap.ts`),j,{})},async watch(e,t){await o(e,t?e.filter(({kind:e,entry:n})=>t.kind===`update`&&e===`apiRoute`&&n.fileFullpath===t.file):e)},async build(e){await o(e,e)}}}),N=d(()=>{let e={name:`Fetch`,slot:`fetch`,dependencies:{"path-to-regexp":O.devDependencies[`path-to-regexp`]}};return{meta:e,factory:t=>M(e,t)}}),P={type:`module`,private:!0,name:`@kosmojs/hono-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/hono-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,crc:`^4.3.2`},devDependencies:{"@hono/node-server":`^2.0.12`,hono:`^4.12.32`,"path-to-regexp":`^8.4.2`,vite:`^8.2.0`}},F=`import { Hono } from "hono";
|
|
131
131
|
|
|
132
132
|
import type { AppFactory } from "@kosmojs/core/api";
|
|
133
133
|
|
|
@@ -1058,7 +1058,7 @@ export default [
|
|
|
1058
1058
|
return next();
|
|
1059
1059
|
}),
|
|
1060
1060
|
];
|
|
1061
|
-
`,Se=f((t,n,r)=>{let{createPath:i,createImportHelpers:a}=h(n),o=e=>e.length===0?`{}`:e.length===1?e[0]:`Override<${e[0]}, ${o(e.slice(1))}>`,{renderToFile:c}=_({helpers:{...a({origin:`lib`}),paramsDefaults({params:e}){return`[${e.schema.map(()=>`unknown?`).join(`, `)}]`},paramsMappings({params:e}){return`[${e.schema.map(({name:e,kind:t})=>`["${e}", unknown, ${t===`required`?`true`:`false`}]`).join(`, `)}]`},cascadingState({cascadingMiddleware:e}){return o(e.map(({id:e})=>`UseT${e}`))}}}),{renderToFile:u}=_({helpers:a({origin:`src`})}),d=e=>e?.trim().length===0,f=s(r?.templates,_e),p=async e=>{for(let{kind:t,entry:n}of e)t===`apiRoute`?await u(i.api(n.file),f(n.name,n),{route:n},{overwrite:d}):t===`apiUse`&&await u(i.api(n.file),ve,{},{overwrite:d})},m=async t=>{let n=t.flatMap(({kind:e,entry:t})=>e===`apiUse`?[t]:[]),a=t.flatMap(({kind:t,entry:i})=>{if(t!==`apiRoute`)return[];let a=i.name.split(`/`).reduce((t,n)=>{let r=t[t.length-1];return t.push(r?e(r,n):n),t},[]),o={...i,path:i.honoPattern,cascadingMiddleware:n.flatMap(e=>a.some(t=>e.name===t)?[e]:[])};return[o,...Object.entries({...r?.alias}).flatMap(([e,t])=>{let n=g(e);return t===i.name?[{...o,name:e,id:`${o.id}_${x(e)}`,fullpath:l(n),pathTokens:n}]:[]})]}).sort(v);for(let[e,t]of[[`@api/routes.ts`,B]])await c(i.lib(e),t,{routes:a,cascadingMiddleware:n})};return{meta:t,options:r,config({command:e}){return{define:{KOSMO_PRODUCTION_BUILD:e===`build`?`true`:`false`}}},async start(){for(let[e,t]of[[`api.ts`,H],[`api:factory.ts`,fe],[`@api/app.ts`,F],[`@api/parsers.ts`,R],[`@api/dev.ts`,I],[`@api/errors.ts`,L],[`@api/router.ts`,z],[`@api/server.ts`,V]])await c(i.lib(e),t,{});for(let[e,t]of[[`app.ts`,pe],[`dev.ts`,me],[`errors.ts`,ge],[`router.ts`,ye],[`server.ts`,be],[`use.ts`,xe]])await u(i.api(e),t,{},{overwrite:d});await c(i.api(`env.d.ts`),he,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await m(e)},async build(e){await p(e),await m(e)}}}),Ce=d(e=>{let t={name:`Hono`,slot:`api`,dependencies:{hono:P.devDependencies.hono,"@hono/node-server":P.devDependencies[`@hono/node-server`],"path-to-regexp":P.devDependencies[`path-to-regexp`]}};return{meta:t,options:e,factory:n=>Se(t,n,e)}}),U={type:`module`,private:!0,name:`@kosmojs/koa-generator`,version:`0.2.
|
|
1061
|
+
`,Se=f((t,n,r)=>{let{createPath:i,createImportHelpers:a}=h(n),o=e=>e.length===0?`{}`:e.length===1?e[0]:`Override<${e[0]}, ${o(e.slice(1))}>`,{renderToFile:c}=_({helpers:{...a({origin:`lib`}),paramsDefaults({params:e}){return`[${e.schema.map(()=>`unknown?`).join(`, `)}]`},paramsMappings({params:e}){return`[${e.schema.map(({name:e,kind:t})=>`["${e}", unknown, ${t===`required`?`true`:`false`}]`).join(`, `)}]`},cascadingState({cascadingMiddleware:e}){return o(e.map(({id:e})=>`UseT${e}`))}}}),{renderToFile:u}=_({helpers:a({origin:`src`})}),d=e=>e?.trim().length===0,f=s(r?.templates,_e),p=async e=>{for(let{kind:t,entry:n}of e)t===`apiRoute`?await u(i.api(n.file),f(n.name,n),{route:n},{overwrite:d}):t===`apiUse`&&await u(i.api(n.file),ve,{},{overwrite:d})},m=async t=>{let n=t.flatMap(({kind:e,entry:t})=>e===`apiUse`?[t]:[]),a=t.flatMap(({kind:t,entry:i})=>{if(t!==`apiRoute`)return[];let a=i.name.split(`/`).reduce((t,n)=>{let r=t[t.length-1];return t.push(r?e(r,n):n),t},[]),o={...i,path:i.honoPattern,cascadingMiddleware:n.flatMap(e=>a.some(t=>e.name===t)?[e]:[])};return[o,...Object.entries({...r?.alias}).flatMap(([e,t])=>{let n=g(e);return t===i.name?[{...o,name:e,id:`${o.id}_${x(e)}`,fullpath:l(n),pathTokens:n}]:[]})]}).sort(v);for(let[e,t]of[[`@api/routes.ts`,B]])await c(i.lib(e),t,{routes:a,cascadingMiddleware:n})};return{meta:t,options:r,config({command:e}){return{define:{KOSMO_PRODUCTION_BUILD:e===`build`?`true`:`false`}}},async start(){for(let[e,t]of[[`api.ts`,H],[`api:factory.ts`,fe],[`@api/app.ts`,F],[`@api/parsers.ts`,R],[`@api/dev.ts`,I],[`@api/errors.ts`,L],[`@api/router.ts`,z],[`@api/server.ts`,V]])await c(i.lib(e),t,{});for(let[e,t]of[[`app.ts`,pe],[`dev.ts`,me],[`errors.ts`,ge],[`router.ts`,ye],[`server.ts`,be],[`use.ts`,xe]])await u(i.api(e),t,{},{overwrite:d});await c(i.api(`env.d.ts`),he,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await m(e)},async build(e){await p(e),await m(e)}}}),Ce=d(e=>{let t={name:`Hono`,slot:`api`,dependencies:{hono:P.devDependencies.hono,"@hono/node-server":P.devDependencies[`@hono/node-server`],"path-to-regexp":P.devDependencies[`path-to-regexp`]}};return{meta:t,options:e,factory:n=>Se(t,n,e)}}),U={type:`module`,private:!0,name:`@kosmojs/koa-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`},"./lib":{types:`./pkg/lib.d.ts`,default:`./pkg/lib.js`}},scripts:{build:`wsbuild src/index.ts src/lib.ts`,test:`vitest --root ../.. --project generators/koa-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,crc:`^4.3.2`},devDependencies:{"@koa/router":`^15.7.0`,"@types/formidable":`^3.5.1`,"@types/koa":`^3.0.3`,"@types/koa-compose":`^3.2.9`,formidable:`^3.5.4`,koa:`^3.2.1`,"koa-compose":`^4.1.0`,"light-my-request":`^6.6.0`,"path-to-regexp":`^8.4.2`,"raw-body":`^4.0.0`,vite:`^8.2.0`}},we=`import Koa from "koa";
|
|
1062
1062
|
|
|
1063
1063
|
import type { AppFactory } from "@kosmojs/core/api";
|
|
1064
1064
|
|
|
@@ -2091,7 +2091,7 @@ export default [
|
|
|
2091
2091
|
* */
|
|
2092
2092
|
use(defaultErrorHandler, { slot: "errorHandler" }),
|
|
2093
2093
|
];
|
|
2094
|
-
`,He=f((t,n,r)=>{let{createPath:i,createImportHelpers:a}=h(n),o=e=>e.length===0?`{}`:e.length===1?e[0]:`Override<${e[0]}, ${o(e.slice(1))}>`,{renderToFile:c}=_({helpers:{...a({origin:`lib`}),paramsDefaults({params:e}){return`[${e.schema.map(()=>`unknown?`).join(`, `)}]`},paramsMappings({params:e}){return`[${e.schema.map(({name:e,kind:t})=>`["${e}", unknown, ${t===`required`?`true`:`false`}]`).join(`, `)}]`},cascadingState({cascadingMiddleware:e}){return o(e.map(({id:e})=>`UseT${e}`))}}}),{renderToFile:l}=_({helpers:a({origin:`src`})}),d=e=>e?.trim().length===0,f=s(r?.templates,Le),p=async e=>{for(let{kind:t,entry:n}of e)t===`apiRoute`?await l(i.api(n.file),f(n.name,n),{route:n},{overwrite:d}):t===`apiUse`&&await l(i.api(n.file),Re,{},{overwrite:d})},m=async t=>{let n=t.flatMap(({kind:e,entry:t})=>e===`apiUse`?[t]:[]),a=t.flatMap(({kind:t,entry:i})=>{if(t!==`apiRoute`)return[];let a=i.name.split(`/`).reduce((t,n)=>{let r=t[t.length-1];return t.push(r?e(r,n):n),t},[]),o={...i,path:i.pathPattern,cascadingMiddleware:n.flatMap(e=>a.some(t=>e.name===t)?[e]:[])};return[o,...Object.entries({...r?.alias}).flatMap(([e,t])=>{let n=g(e);return t===i.name?[{...o,name:e,id:`${o.id}_${x(e)}`,fullpath:u(n),pathTokens:n}]:[]})]}).sort(v);for(let[e,t]of[[`@api/routes.ts`,ke]])await c(i.lib(e),t,{routes:a,cascadingMiddleware:n})};return{meta:t,options:r,config({command:e}){return{define:{KOSMO_PRODUCTION_BUILD:e===`build`?`true`:`false`}}},async start(){for(let[e,t]of[[`api.ts`,je],[`api:factory.ts`,Me],[`@api/app.ts`,we],[`@api/dev.ts`,Te],[`@api/errors.ts`,Ee],[`@api/parsers.ts`,De],[`@api/router.ts`,Oe],[`@api/server.ts`,Ae]])await c(i.lib(e),t,{});for(let[e,t]of[[`app.ts`,Ne],[`dev.ts`,Pe],[`errors.ts`,Ie],[`router.ts`,ze],[`server.ts`,Be],[`use.ts`,Ve]])await l(i.api(e),t,{},{overwrite:d});await c(i.api(`env.d.ts`),Fe,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await m(e)},async build(e){await p(e),await m(e)}}}),Ue=d(e=>{let t={name:`Koa`,slot:`api`,dependencies:{koa:U.devDependencies.koa,"@koa/router":U.devDependencies[`@koa/router`],"path-to-regexp":U.devDependencies[`path-to-regexp`],formidable:U.devDependencies.formidable,"raw-body":U.devDependencies[`raw-body`]},devDependencies:{"@types/koa":U.devDependencies[`@types/koa`],"@types/formidable":U.devDependencies[`@types/formidable`]},types:[`@types/koa`]};return{meta:t,options:e,factory:n=>He(t,n,e)}}),W={type:`module`,private:!0,name:`@kosmojs/mdx-generator`,version:`0.2.
|
|
2094
|
+
`,He=f((t,n,r)=>{let{createPath:i,createImportHelpers:a}=h(n),o=e=>e.length===0?`{}`:e.length===1?e[0]:`Override<${e[0]}, ${o(e.slice(1))}>`,{renderToFile:c}=_({helpers:{...a({origin:`lib`}),paramsDefaults({params:e}){return`[${e.schema.map(()=>`unknown?`).join(`, `)}]`},paramsMappings({params:e}){return`[${e.schema.map(({name:e,kind:t})=>`["${e}", unknown, ${t===`required`?`true`:`false`}]`).join(`, `)}]`},cascadingState({cascadingMiddleware:e}){return o(e.map(({id:e})=>`UseT${e}`))}}}),{renderToFile:l}=_({helpers:a({origin:`src`})}),d=e=>e?.trim().length===0,f=s(r?.templates,Le),p=async e=>{for(let{kind:t,entry:n}of e)t===`apiRoute`?await l(i.api(n.file),f(n.name,n),{route:n},{overwrite:d}):t===`apiUse`&&await l(i.api(n.file),Re,{},{overwrite:d})},m=async t=>{let n=t.flatMap(({kind:e,entry:t})=>e===`apiUse`?[t]:[]),a=t.flatMap(({kind:t,entry:i})=>{if(t!==`apiRoute`)return[];let a=i.name.split(`/`).reduce((t,n)=>{let r=t[t.length-1];return t.push(r?e(r,n):n),t},[]),o={...i,path:i.pathPattern,cascadingMiddleware:n.flatMap(e=>a.some(t=>e.name===t)?[e]:[])};return[o,...Object.entries({...r?.alias}).flatMap(([e,t])=>{let n=g(e);return t===i.name?[{...o,name:e,id:`${o.id}_${x(e)}`,fullpath:u(n),pathTokens:n}]:[]})]}).sort(v);for(let[e,t]of[[`@api/routes.ts`,ke]])await c(i.lib(e),t,{routes:a,cascadingMiddleware:n})};return{meta:t,options:r,config({command:e}){return{define:{KOSMO_PRODUCTION_BUILD:e===`build`?`true`:`false`}}},async start(){for(let[e,t]of[[`api.ts`,je],[`api:factory.ts`,Me],[`@api/app.ts`,we],[`@api/dev.ts`,Te],[`@api/errors.ts`,Ee],[`@api/parsers.ts`,De],[`@api/router.ts`,Oe],[`@api/server.ts`,Ae]])await c(i.lib(e),t,{});for(let[e,t]of[[`app.ts`,Ne],[`dev.ts`,Pe],[`errors.ts`,Ie],[`router.ts`,ze],[`server.ts`,Be],[`use.ts`,Ve]])await l(i.api(e),t,{},{overwrite:d});await c(i.api(`env.d.ts`),Fe,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await m(e)},async build(e){await p(e),await m(e)}}}),Ue=d(e=>{let t={name:`Koa`,slot:`api`,dependencies:{koa:U.devDependencies.koa,"@koa/router":U.devDependencies[`@koa/router`],"path-to-regexp":U.devDependencies[`path-to-regexp`],formidable:U.devDependencies.formidable,"raw-body":U.devDependencies[`raw-body`]},devDependencies:{"@types/koa":U.devDependencies[`@types/koa`],"@types/formidable":U.devDependencies[`@types/formidable`]},types:[`@types/koa`]};return{meta:t,options:e,factory:n=>He(t,n,e)}}),W={type:`module`,private:!0,name:`@kosmojs/mdx-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,"@mdx-js/rollup":`^3.1.1`,vite:`^8.2.0`},devDependencies:{"@mdx-js/mdx":`^3.1.1`,"@mdx-js/preact":`^3.1.1`,"path-to-regexp":`^8.4.2`,preact:`^10.29.7`,"preact-render-to-string":`^6.7.0`,"remark-frontmatter":`^5.0.0`,"remark-mdx-frontmatter":`^5.2.0`}},We=()=>{let e=[`π Well done! You just created a new MDX page.`,`π Success! A fresh MDX page is ready to roll.`,`π Nice work! Another MDX page added to your site.`,`π§© All set! A new MDX page has been scaffolded.`,`π§ Scaffold complete! Your new MDX page is in place.`,`β
Built! Your MDX page is scaffolded and ready.`,`β¨ Fantastic! Your new MDX page is good to go.`,`π― Nailed it! A brand new MDX page just landed.`,`π« Awesome! Another MDX page joins the party.`,`β‘ Lightning fast! A new MDX page created successfully.`];return e[Math.floor(Math.random()*e.length)]},Ge=(e,t,n)=>{let{remarkPlugins:r=[],rehypePlugins:i=[]}={...n},a=()=>{let t=[`${c.srcDir}/${e.name}/${c.entryDir}/client.ts`].map(e=>C(e)),n=e=>t.some(t=>t(e));return{name:`kosmo:mdx[hmr]`,enforce:`post`,transform(e,t){if(!(!n(t)||e.includes(`import.meta.hot.accept`)))return{code:[e,`
|
|
2095
2095
|
if (import.meta.hot) {
|
|
2096
2096
|
import.meta.hot.accept(() => {});
|
|
2097
2097
|
}
|
|
@@ -3021,7 +3021,7 @@ export default routerFactory((routes) => {
|
|
|
3021
3021
|
},
|
|
3022
3022
|
};
|
|
3023
3023
|
});
|
|
3024
|
-
`,gt=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b(),serializeParams(e){return JSON.stringify(e.params)}}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=e=>!e?.trim().length,u=s(n?.templates,pt),d=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?mt:u(n.name,n),{route:n,title:n.name.replace(/\{([^}]+)\}/g,`$1`),message:We()},{overwrite:l}):t===`pageLayout`&&await o(r.pages(n.file),ft,{route:n},{overwrite:l})},f=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageLayout`?[t]:[]),n=e.flatMap(({kind:e,entry:n})=>{if(e===`pageRoute`){let{name:e,file:r}=n;return[{...n,layouts:t.flatMap(t=>t.name===e||r.startsWith(`${t.name}/`)?[t]:[]).sort(v)}]}return[]}).sort(v);for(let[e,i]of[[`client.ts`,Ke],[`server.ts`,qe]])await a(r.libEntry(e),i,{pageRoutes:n,layouts:t});for(let[e,t]of[[`params.ts`,et],[`router.ts`,tt],[`ssg:routes.ts`,rt]])await a(r.lib(e),t,{pageRoutes:n})};return{meta:e,options:n,config({command:e}){return{oxc:{jsx:{importSource:`preact`}},plugins:Ge(t,e,n)}},async start(){for(let[e,t]of[[`env.d.ts`,Je],[`mdx.ts`,Ye],[`use.ts`,it],[`ssg.ts`,nt],[`pageSamples/styles.module.css`,Qe],[`pageSamples/welcome.tsx`,$e],[`pageSamples/page.tsx`,Ze],[`pageSamples/404.tsx`,Xe]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.mdx`,dt],[`components/Link.tsx`,ot],[`components/mdx.ts`,st],[`App.mdx`,at],[`router.ts`,ht]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:l});await o(r.src(`index.html`),ut,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,ct],[`server.ts`,lt]])await o(r.entry(e),t,{},{overwrite:l})},async watch(e,t){(!t||t.kind===`create`)&&await d(e),await f(e)},async build(e){await d(e),await f(e)}}}),_t=d(e=>{let t={name:`MDX`,dependencies:{"path-to-regexp":W.devDependencies[`path-to-regexp`]},devDependencies:{preact:W.devDependencies.preact,"preact-render-to-string":W.devDependencies[`preact-render-to-string`],"@mdx-js/preact":W.devDependencies[`@mdx-js/preact`],"remark-frontmatter":W.devDependencies[`remark-frontmatter`],"remark-mdx-frontmatter":W.devDependencies[`remark-mdx-frontmatter`]},jsxImportSource:`preact`};return{meta:t,options:e,factory:n=>gt(t,n,e)}}),vt={json:`application/json`,form:[`application/x-www-form-urlencoded`,`multipart/form-data`],raw:void 0},yt=()=>{let t=e=>[`Buffer`,`ArrayBuffer`,`Blob`].includes(e)?{type:`string`,format:`binary`}:ae.Script(e),n=(e,t,n)=>{let r=n?`${t}_${n.replace(/[^\w.-]/g,`_`)}${x(n)}`:t;return`${e.id}_${r}`},r=(e,t,r,i)=>[`#`,`components`,e,n(t,r,i)].join(`/`),a=e=>e.split(`/`).reduce((e,t)=>e+ +!t.includes(`{`),0),o=t=>{if(t.name===`index`)return[`/`];let{tokens:n}=ie(t.pathPattern),r=e=>e.flatMap(e=>{switch(e.type){case`param`:return[e.name];case`wildcard`:return[e.name];case`group`:return r(e.tokens);default:return[]}}),i=(e,t)=>{if(!e.length)return[t];let[n,...a]=e;switch(n.type){case`text`:return i(a,{path:`${t.path}${n.value}`,params:t.params});case`param`:return i(a,{path:`${t.path}{${n.name}}`,params:[...t.params,n.name]});case`wildcard`:return i(a,{path:`${t.path}{${n.name}*}`,params:[...t.params,n.name]});case`group`:{let e=i(a,t),o=i([...n.tokens,...a],t),s=r(n.tokens),c=o.filter(e=>s.some(t=>e.params.includes(t)));return[...e,...c]}}},o=i(n,{path:``,params:[]}),s=t.params.schema.reduce((e,{name:t},n)=>(e[n]=t,e),{});return o.reduce((t,n)=>{let r=e(`/`,n.path);return t.includes(r)||n.params.every((e,t)=>e===s[t])&&t.push(r),t},[]).sort((e,t)=>a(t)-a(e))},s=(e,t)=>{let n=e.params.resolvedType?.properties?.flatMap(n=>RegExp(`\\{${n.nameLiteral}\\*?\\}`).test(t)?[{$ref:r(`parameters`,e,e.params.id,n.nameLiteral)}]:[]);return n?.length?n:void 0},c=(e,t)=>{let n=e.validationDefinitions.find(e=>e.method===t&&e.target===`response`);return Array.isArray(n?.variants)?n.variants.reduce((t,{id:n,status:i,contentType:a,body:o})=>(t[i]=bt(i,a)||{description:`Success`,content:{[a||`application/json`]:{schema:o?{$ref:r(`schemas`,e,n)}:{type:`object`}}}},t),{}):{200:{description:`Success - TODO: Add response schema`,content:{"text/plain":{schema:{type:`string`}}}}}},l=e=>{let{parameters:r,schemas:i}={parameters:{},schemas:{}};for(let r of e.validationDefinitions)if(r.target===`response`)for(let{id:a,resolvedType:o}of r.variants)o?.typeboxSchema&&(i[n(e,a)]=t(o.typeboxSchema));else if(r.target===`query`){let{id:a,resolvedType:o}=r.schema;for(let r of o?.properties||[])if(r?.typeboxSchema){let o=n(e,a,r.nameLiteral);i[o]=t(r.typeboxSchema)}}else{let{id:a,resolvedType:o}=r.schema;o?.typeboxSchema&&(i[n(e,a)]=t(o.typeboxSchema))}if(e.params.resolvedType)for(let i of e.params.resolvedType.properties||[])i?.typeboxSchema&&(r[n(e,e.params.id,i.nameLiteral)]={name:i.nameLiteral,in:`path`,required:!0,schema:t(i.typeboxSchema)});return{parameters:r,schemas:i}},u=e=>{let t={},n=e.validationDefinitions.flatMap(e=>e.target===`response`?[]:e.schema.resolvedType?[e]:[]);for(let a of o(e))for(let o of e.methods){let l={responses:c(e,o)},u=s(e,a);u&&(l.parameters=u);let d=n.find(e=>e.method===o&&e.target===`query`);if(d?.schema)for(let t of d.schema.resolvedType?.properties||[])l.parameters||=[],l.parameters.push({name:t.nameLiteral,in:`query`,required:!t.optional,schema:{$ref:r(`schemas`,e,d.schema.id,t.nameLiteral)}});let f=n.filter(e=>e.method===o&&Object.keys(i).includes(e.target));f.length&&(l.requestBody={required:!0,content:f.reduce((t,n)=>{let{contentType:i=vt[n.target]}=n;if(i){let a={$ref:r(`schemas`,e,n.schema.id)};for(let e of[i].flat())t[e]={schema:a}}return t},{})}),t[a]||(t[a]={}),t[a][o.toLowerCase()]=l}return t};return{generateComponentId:n,generateComponentPath:r,generatePathVariations:o,generateOpenAPISchema:e=>{let{components:t,paths:n}=e.sort(v).flatMap(t=>e.some(e=>e.name!==t.name&&e.name.startsWith(t.name))?[]:[t]).reduce((e,t)=>{let n=u(t),{parameters:r,schemas:i}=l(t);return{paths:{...e.paths,...n},components:{parameters:{...e.components.parameters,...r},schemas:{...e.components.schemas,...i}}}},{paths:{},components:{parameters:{},schemas:{}}});return{paths:n,components:t}}}},bt=(e,t)=>{let n={type:`string`,format:`uri`,...t?{enum:[t]}:{}};return{301:{description:`Moved Permanently`,headers:{Location:{description:`New permanent location`,schema:n}}},302:{description:`Found`,headers:{Location:{description:`Temporary location`,schema:n}}},303:{description:`See Other`,headers:{Location:{description:`Location to GET after POST/PUT/DELETE`,schema:n}}},307:{description:`Temporary Redirect`,headers:{Location:{description:`Temporary location (preserves request method)`,schema:n}}},308:{description:`Permanent Redirect`,headers:{Location:{description:`New permanent location (preserves request method)`,schema:n}}}}[e]},xt=f((e,t,n)=>{let{outfile:r,...i}={...n},{createPath:a}=h(t),{generateOpenAPISchema:o}=yt(),s=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`apiRoute`?[t]:[]),{paths:n,components:s}=o(t),c={...JSON.parse(JSON.stringify(i)),paths:n,components:s},l=/ya?ml/.test(r)?re.stringify(c):JSON.stringify(c,null,2);await ee(a.src(r),l,{})};return{meta:e,options:n,async watch(e){await s(e)},async build(e){await s(e)}}}),St=d(e=>{let t={name:`OpenAPI`,resolveTypes:!0};return{meta:t,options:e,factory:n=>xt(t,n,e)}}),G={type:`module`,private:!0,name:`@kosmojs/react-generator`,version:`0.2.
|
|
3024
|
+
`,gt=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b(),serializeParams(e){return JSON.stringify(e.params)}}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=e=>!e?.trim().length,u=s(n?.templates,pt),d=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?mt:u(n.name,n),{route:n,title:n.name.replace(/\{([^}]+)\}/g,`$1`),message:We()},{overwrite:l}):t===`pageLayout`&&await o(r.pages(n.file),ft,{route:n},{overwrite:l})},f=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageLayout`?[t]:[]),n=e.flatMap(({kind:e,entry:n})=>{if(e===`pageRoute`){let{name:e,file:r}=n;return[{...n,layouts:t.flatMap(t=>t.name===e||r.startsWith(`${t.name}/`)?[t]:[]).sort(v)}]}return[]}).sort(v);for(let[e,i]of[[`client.ts`,Ke],[`server.ts`,qe]])await a(r.libEntry(e),i,{pageRoutes:n,layouts:t});for(let[e,t]of[[`params.ts`,et],[`router.ts`,tt],[`ssg:routes.ts`,rt]])await a(r.lib(e),t,{pageRoutes:n})};return{meta:e,options:n,config({command:e}){return{oxc:{jsx:{importSource:`preact`}},plugins:Ge(t,e,n)}},async start(){for(let[e,t]of[[`env.d.ts`,Je],[`mdx.ts`,Ye],[`use.ts`,it],[`ssg.ts`,nt],[`pageSamples/styles.module.css`,Qe],[`pageSamples/welcome.tsx`,$e],[`pageSamples/page.tsx`,Ze],[`pageSamples/404.tsx`,Xe]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.mdx`,dt],[`components/Link.tsx`,ot],[`components/mdx.ts`,st],[`App.mdx`,at],[`router.ts`,ht]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:l});await o(r.src(`index.html`),ut,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,ct],[`server.ts`,lt]])await o(r.entry(e),t,{},{overwrite:l})},async watch(e,t){(!t||t.kind===`create`)&&await d(e),await f(e)},async build(e){await d(e),await f(e)}}}),_t=d(e=>{let t={name:`MDX`,dependencies:{"path-to-regexp":W.devDependencies[`path-to-regexp`]},devDependencies:{preact:W.devDependencies.preact,"preact-render-to-string":W.devDependencies[`preact-render-to-string`],"@mdx-js/preact":W.devDependencies[`@mdx-js/preact`],"remark-frontmatter":W.devDependencies[`remark-frontmatter`],"remark-mdx-frontmatter":W.devDependencies[`remark-mdx-frontmatter`]},jsxImportSource:`preact`};return{meta:t,options:e,factory:n=>gt(t,n,e)}}),vt={json:`application/json`,form:[`application/x-www-form-urlencoded`,`multipart/form-data`],raw:void 0},yt=()=>{let t=e=>[`Buffer`,`ArrayBuffer`,`Blob`].includes(e)?{type:`string`,format:`binary`}:ae.Script(e),n=(e,t,n)=>{let r=n?`${t}_${n.replace(/[^\w.-]/g,`_`)}${x(n)}`:t;return`${e.id}_${r}`},r=(e,t,r,i)=>[`#`,`components`,e,n(t,r,i)].join(`/`),a=e=>e.split(`/`).reduce((e,t)=>e+ +!t.includes(`{`),0),o=t=>{if(t.name===`index`)return[`/`];let{tokens:n}=ie(t.pathPattern),r=e=>e.flatMap(e=>{switch(e.type){case`param`:return[e.name];case`wildcard`:return[e.name];case`group`:return r(e.tokens);default:return[]}}),i=(e,t)=>{if(!e.length)return[t];let[n,...a]=e;switch(n.type){case`text`:return i(a,{path:`${t.path}${n.value}`,params:t.params});case`param`:return i(a,{path:`${t.path}{${n.name}}`,params:[...t.params,n.name]});case`wildcard`:return i(a,{path:`${t.path}{${n.name}*}`,params:[...t.params,n.name]});case`group`:{let e=i(a,t),o=i([...n.tokens,...a],t),s=r(n.tokens),c=o.filter(e=>s.some(t=>e.params.includes(t)));return[...e,...c]}}},o=i(n,{path:``,params:[]}),s=t.params.schema.reduce((e,{name:t},n)=>(e[n]=t,e),{});return o.reduce((t,n)=>{let r=e(`/`,n.path);return t.includes(r)||n.params.every((e,t)=>e===s[t])&&t.push(r),t},[]).sort((e,t)=>a(t)-a(e))},s=(e,t)=>{let n=e.params.resolvedType?.properties?.flatMap(n=>RegExp(`\\{${n.nameLiteral}\\*?\\}`).test(t)?[{$ref:r(`parameters`,e,e.params.id,n.nameLiteral)}]:[]);return n?.length?n:void 0},c=(e,t)=>{let n=e.validationDefinitions.find(e=>e.method===t&&e.target===`response`);return Array.isArray(n?.variants)?n.variants.reduce((t,{id:n,status:i,contentType:a,body:o})=>(t[i]=bt(i,a)||{description:`Success`,content:{[a||`application/json`]:{schema:o?{$ref:r(`schemas`,e,n)}:{type:`object`}}}},t),{}):{200:{description:`Success - TODO: Add response schema`,content:{"text/plain":{schema:{type:`string`}}}}}},l=e=>{let{parameters:r,schemas:i}={parameters:{},schemas:{}};for(let r of e.validationDefinitions)if(r.target===`response`)for(let{id:a,resolvedType:o}of r.variants)o?.typeboxSchema&&(i[n(e,a)]=t(o.typeboxSchema));else if(r.target===`query`){let{id:a,resolvedType:o}=r.schema;for(let r of o?.properties||[])if(r?.typeboxSchema){let o=n(e,a,r.nameLiteral);i[o]=t(r.typeboxSchema)}}else{let{id:a,resolvedType:o}=r.schema;o?.typeboxSchema&&(i[n(e,a)]=t(o.typeboxSchema))}if(e.params.resolvedType)for(let i of e.params.resolvedType.properties||[])i?.typeboxSchema&&(r[n(e,e.params.id,i.nameLiteral)]={name:i.nameLiteral,in:`path`,required:!0,schema:t(i.typeboxSchema)});return{parameters:r,schemas:i}},u=e=>{let t={},n=e.validationDefinitions.flatMap(e=>e.target===`response`?[]:e.schema.resolvedType?[e]:[]);for(let a of o(e))for(let o of e.methods){let l={responses:c(e,o)},u=s(e,a);u&&(l.parameters=u);let d=n.find(e=>e.method===o&&e.target===`query`);if(d?.schema)for(let t of d.schema.resolvedType?.properties||[])l.parameters||=[],l.parameters.push({name:t.nameLiteral,in:`query`,required:!t.optional,schema:{$ref:r(`schemas`,e,d.schema.id,t.nameLiteral)}});let f=n.filter(e=>e.method===o&&Object.keys(i).includes(e.target));f.length&&(l.requestBody={required:!0,content:f.reduce((t,n)=>{let{contentType:i=vt[n.target]}=n;if(i){let a={$ref:r(`schemas`,e,n.schema.id)};for(let e of[i].flat())t[e]={schema:a}}return t},{})}),t[a]||(t[a]={}),t[a][o.toLowerCase()]=l}return t};return{generateComponentId:n,generateComponentPath:r,generatePathVariations:o,generateOpenAPISchema:e=>{let{components:t,paths:n}=e.sort(v).flatMap(t=>e.some(e=>e.name!==t.name&&e.name.startsWith(t.name))?[]:[t]).reduce((e,t)=>{let n=u(t),{parameters:r,schemas:i}=l(t);return{paths:{...e.paths,...n},components:{parameters:{...e.components.parameters,...r},schemas:{...e.components.schemas,...i}}}},{paths:{},components:{parameters:{},schemas:{}}});return{paths:n,components:t}}}},bt=(e,t)=>{let n={type:`string`,format:`uri`,...t?{enum:[t]}:{}};return{301:{description:`Moved Permanently`,headers:{Location:{description:`New permanent location`,schema:n}}},302:{description:`Found`,headers:{Location:{description:`Temporary location`,schema:n}}},303:{description:`See Other`,headers:{Location:{description:`Location to GET after POST/PUT/DELETE`,schema:n}}},307:{description:`Temporary Redirect`,headers:{Location:{description:`Temporary location (preserves request method)`,schema:n}}},308:{description:`Permanent Redirect`,headers:{Location:{description:`New permanent location (preserves request method)`,schema:n}}}}[e]},xt=f((e,t,n)=>{let{outfile:r,...i}={...n},{createPath:a}=h(t),{generateOpenAPISchema:o}=yt(),s=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`apiRoute`?[t]:[]),{paths:n,components:s}=o(t),c={...JSON.parse(JSON.stringify(i)),paths:n,components:s},l=/ya?ml/.test(r)?re.stringify(c):JSON.stringify(c,null,2);await ee(a.src(r),l,{})};return{meta:e,options:n,async watch(e){await s(e)},async build(e){await s(e)}}}),St=d(e=>{let t={name:`OpenAPI`,resolveTypes:!0};return{meta:t,options:e,factory:n=>xt(t,n,e)}}),G={type:`module`,private:!0,name:`@kosmojs/react-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/react-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,"@vitejs/plugin-react":`^6.0.5`},devDependencies:{"@types/react":`^19.2.17`,"@types/react-dom":`^19.2.3`,"path-to-regexp":`^8.4.2`,react:`^19.2.8`,"react-dom":`^19.2.8`,"react-router":`^8.3.0`}},Ct=e=>{let t=e.map(e=>e.orig).join(`/`),r=e=>e.kind===`splat`?`*`:e.kind===`optional`?`:${e.name}?`:`:${e.name}`;return e.flatMap(e=>e.kind===`static`?[e.parts[0].value]:e.kind===`param`?[r(e.parts[0])]:(/\.\w+$/.test(e.orig)||(console.warn(`β${n([`red`,`bold`],`WARN`)}: React Router v7 only supports dot-suffix mixed segments (e.g. :param.html).`),console.warn(` ${n([`magenta`],e.orig)} in ${n([`blue`],t)} route won't match as expected.`),console.warn()),[e.parts.map(e=>e.type===`static`?e.value:r(e)).join(``)])).join(`/`)},wt=()=>{let e=e=>e?.kind===`param`&&e.parts[0]?.kind===`splat`,t=n=>n.flatMap(({index:n,layout:r,children:i})=>{let{name:a,pathTokens:o}={...n,...r};if(!o)return[];let s=`${a}:layout`,c=Ct(o),l=o.at(-1);return e(l)?n&&r?[{name:s,path:c,component:r.id,children:[{name:a,path:`*`,component:n.id}]}]:n?[{path:c,children:[{name:a,path:`*`,component:n.id},...t(i)]}]:r?[{name:s,path:c,component:r.id,children:t(i)}]:[]:n&&r?[{name:s,path:c,component:r.id,children:[{name:a,index:!0,component:n.id},...t(i)]}]:n?[{path:c,children:[{name:a,index:!0,component:n.id},...t(i)]}]:r?[{name:s,path:c,component:r.id,children:t(i)}]:[]});return t},Tt=()=>{let e=[`π Well done! You just created a new React route.`,`π Success! A fresh React route is ready to roll.`,`π Nice work! Another React route added to your app.`,`β‘ Quick and easy! Your new React route is good to go.`,`π₯³ Congrats! Your app just leveled up with a new React route.`,`π§© All set! A new React route has been scaffolded.`,`π§ Scaffold complete! Your new React route is in place.`,`β¨ Fantastic! Your new React route is ready.`,`π― Nailed it! A brand new React route just landed.`,`π« Awesome! Another React route joins the lineup.`];return e[Math.floor(Math.random()*e.length)]},Et=`import { lazy, type JSX } from "react";
|
|
3025
3025
|
|
|
3026
3026
|
import {
|
|
3027
3027
|
createRoot,
|
|
@@ -3682,7 +3682,7 @@ export default routerFactory((routes) => {
|
|
|
3682
3682
|
},
|
|
3683
3683
|
};
|
|
3684
3684
|
});
|
|
3685
|
-
`,Gt=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b()},partials:{routePartial:Dt}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=wt(),u=e=>!e?.trim().length,d=s(n?.templates,Ht),f=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?Ut:d(n.name,n),{route:n,message:Tt()},{overwrite:u}):t===`pageLayout`&&await o(r.pages(n.file),Vt,{route:n},{overwrite:u})},p=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`?[t]:[]).sort(v),n=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`||e===`pageLayout`?[t]:[]),i=l(m(n));for(let[e,t]of[[`client.ts`,Et],[`server.ts`,Ot]])await a(r.libEntry(e),t,{pageEntries:n,nestedRoutes:i});await a(r.lib(`router.tsx`),Pt,{entries:e,indexRoutes:t})};return{meta:e,options:n,config(){let{templates:e,...t}={...n};return{plugins:[oe(t)]}},async start(){for(let[e,t]of[[`env.d.ts`,``],[`react.ts`,Nt],[`pageSamples/styles.module.css`,jt],[`pageSamples/welcome.tsx`,Mt],[`pageSamples/page.tsx`,At],[`pageSamples/404.tsx`,kt]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.tsx`,Bt],[`components/Link.tsx`,It],[`App.tsx`,Ft],[`router.ts`,Wt]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:u});await o(r.src(`index.html`),zt,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,Lt],[`server.ts`,Rt]])await o(r.entry(e),t,{},{overwrite:u})},async watch(e,t){(!t||t.kind===`create`)&&await f(e),await p(e)},async build(e){await f(e),await p(e)}}}),Kt=d(e=>{let t={name:`React`,dependencies:{react:G.devDependencies.react,"react-router":G.devDependencies[`react-router`],"path-to-regexp":G.devDependencies[`path-to-regexp`]},devDependencies:{"@types/react":G.devDependencies[`@types/react`],"@types/react-dom":G.devDependencies[`@types/react-dom`],"react-dom":G.devDependencies[`react-dom`]},jsxImportSource:`react`};return{meta:t,options:e,factory:n=>Gt(t,n,e)}}),K={type:`module`,private:!0,name:`@kosmojs/solid-generator`,version:`0.2.
|
|
3685
|
+
`,Gt=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b()},partials:{routePartial:Dt}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=wt(),u=e=>!e?.trim().length,d=s(n?.templates,Ht),f=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?Ut:d(n.name,n),{route:n,message:Tt()},{overwrite:u}):t===`pageLayout`&&await o(r.pages(n.file),Vt,{route:n},{overwrite:u})},p=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`?[t]:[]).sort(v),n=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`||e===`pageLayout`?[t]:[]),i=l(m(n));for(let[e,t]of[[`client.ts`,Et],[`server.ts`,Ot]])await a(r.libEntry(e),t,{pageEntries:n,nestedRoutes:i});await a(r.lib(`router.tsx`),Pt,{entries:e,indexRoutes:t})};return{meta:e,options:n,config(){let{templates:e,...t}={...n};return{plugins:[oe(t)]}},async start(){for(let[e,t]of[[`env.d.ts`,``],[`react.ts`,Nt],[`pageSamples/styles.module.css`,jt],[`pageSamples/welcome.tsx`,Mt],[`pageSamples/page.tsx`,At],[`pageSamples/404.tsx`,kt]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.tsx`,Bt],[`components/Link.tsx`,It],[`App.tsx`,Ft],[`router.ts`,Wt]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:u});await o(r.src(`index.html`),zt,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,Lt],[`server.ts`,Rt]])await o(r.entry(e),t,{},{overwrite:u})},async watch(e,t){(!t||t.kind===`create`)&&await f(e),await p(e)},async build(e){await f(e),await p(e)}}}),Kt=d(e=>{let t={name:`React`,dependencies:{react:G.devDependencies.react,"react-router":G.devDependencies[`react-router`],"path-to-regexp":G.devDependencies[`path-to-regexp`]},devDependencies:{"@types/react":G.devDependencies[`@types/react`],"@types/react-dom":G.devDependencies[`@types/react-dom`],"react-dom":G.devDependencies[`react-dom`]},jsxImportSource:`react`};return{meta:t,options:e,factory:n=>Gt(t,n,e)}}),K={type:`module`,private:!0,name:`@kosmojs/solid-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/solid-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,"vite-plugin-solid":`^2.11.14`},devDependencies:{"@solidjs/router":`^1.0.0`,"path-to-regexp":`^8.4.2`,"solid-js":`^1.9.14`}},qt=()=>{let e=e=>e?.kind===`param`&&e.parts[0]?.kind===`splat`,t=t=>t?.kind===`param`?t.parts[0]?.kind===`optional`||e(t):!1,n=r=>r.flatMap(({index:r,layout:i,children:a})=>{let{pathTokens:o}={...r,...i},s=q(o.map((e,n)=>e.kind===`param`&&(t(o[n+1])||a.some(e=>e.index?.pathTokens.some(t)))?{...e,parts:[{...e.parts[0],kind:`required`}]}:e)),c=o.at(-1);if(e(c)){let e=q([c]);return r&&i?[{path:s,component:i.id,children:[{path:e,component:r.id}]}]:r?[{path:s,children:[{path:e,component:r.id},...n(a)]}]:i?[{path:s,component:i.id,children:n(a)}]:[]}return r&&i?[{path:s,component:i.id,children:[{path:`/`,component:r.id},...n(a)]}]:r?[{path:s,children:[{path:`/`,component:r.id},...n(a)]}]:i?[{path:s,component:i.id,children:n(a)}]:[]});return n},q=e=>{let t=e.map(e=>e.orig).join(`/`),r=e=>e.kind===`splat`?`*${e.name}`:e.kind===`optional`?`:${e.name}?`:`:${e.name}`;return e.flatMap(e=>e.kind===`static`?[e.parts[0].value]:e.kind===`param`?[r(e.parts[0])]:(e.parts.length&&(console.warn(`β${n([`red`,`bold`],`WARN`)}: At the moment Solid Router does not support mixed path segments.`),console.warn(` ${n([`magenta`],e.orig)} segment in ${n([`blue`],t)} route won't match as expected.`),console.warn()),[e.parts.map(e=>e.type===`static`?e.value:r(e)).join(``)])).join(`/`)},Jt=()=>{let e=[`π Well done! You just created a new Solid route.`,`π Success! A fresh Solid route is ready to roll.`,`π Nice work! Another Solid route added to your app.`,`π§© All set! A new Solid route has been scaffolded.`,`π§ Scaffold complete! Your new Solid route is in place.`,`β
Built! Your Solid route is scaffolded and ready.`,`β¨ Fantastic! Your new Solid route is good to go.`,`π― Nailed it! A brand new Solid route just landed.`,`π« Awesome! Another Solid route joins the party.`,`β‘ Lightning fast! A new Solid route created successfully.`];return e[Math.floor(Math.random()*e.length)]},Yt=`import { lazy, type JSX } from "solid-js";
|
|
3686
3686
|
import { hydrate as hydrateOrig, render } from "solid-js/web";
|
|
3687
3687
|
import type { RouterFactoryReturn } from "@kosmojs/core";
|
|
3688
3688
|
import { clientRenderFactory } from "@kosmojs/core/generators";
|
|
@@ -4305,7 +4305,7 @@ export default routerFactory((routes) => {
|
|
|
4305
4305
|
},
|
|
4306
4306
|
};
|
|
4307
4307
|
});
|
|
4308
|
-
`,gn=f((e,t,n)=>{let{generators:r=[]}=t.config,{createPath:i,createImportHelpers:a}=h(t),{renderToFile:o}=_({helpers:{...a({origin:`lib`}),...b()},partials:{routePartial:Xt}}),{renderToFile:l}=_({helpers:a({origin:`src`})}),u=qt(),d=e=>!e?.trim().length,f=s(n?.templates,pn),p=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await l(i.pages(n.file),n.name===`index`?mn:f(n.name,n),{route:n,message:Jt()},{overwrite:d}):t===`pageLayout`&&await l(i.pages(n.file),fn,{route:n},{overwrite:d})},g=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`?[t]:[]).sort(v),n=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`||e===`pageLayout`?[t]:[]),r=u(m(n));for(let[e,t]of[[`client.ts`,Yt],[`server.ts`,Zt]])await o(i.libEntry(e),t,{pageEntries:n,nestedRoutes:r});await o(i.lib(`router.tsx`),nn,{entries:e,indexRoutes:t})};return{meta:e,options:n,config({command:e}){let{templates:t,...i}={...n};return{oxc:{jsx:{importSource:`solid-js`}},plugins:e===`build`?[w({...i,...r.some(e=>e.meta.slot===`ssr`)?{ssr:!0,solid:{...i?.solid,hydratable:!0}}:{}})]:[w({...i,dev:!0,hot:!0})]}},async start(){for(let[e,t]of[[`env.d.ts`,``],[`solid.ts`,rn],[`unwrap.ts`,an],[`pageSamples/styles.module.css`,en],[`pageSamples/welcome.tsx`,tn],[`pageSamples/page.tsx`,$t],[`pageSamples/404.tsx`,Qt]])await o(i.lib(e),t,{});for(let[e,t]of[[`pages/404.tsx`,dn],[`components/Link.tsx`,sn],[`App.tsx`,on],[`router.ts`,hn]])await l(i.src(e),t,{entryDir:c.entryDir},{overwrite:d});await l(i.src(`index.html`),un,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,cn],[`server.ts`,ln]])await l(i.entry(e),t,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await g(e)},async build(e){await p(e),await g(e)}}}),_n=d(e=>{let t={name:`SolidJS`,dependencies:{"solid-js":K.devDependencies[`solid-js`],"@solidjs/router":K.devDependencies[`@solidjs/router`],"path-to-regexp":K.devDependencies[`path-to-regexp`]},jsxImportSource:`solid-js`};return{meta:t,options:e,factory:n=>gn(t,n,e)}}),vn=f((r,i)=>{let{generators:a=[],refineTypeName:o,...s}={...i.config},{createPath:c}=h(i);return{meta:r,async postBuild(){let r=c.distDir(`ssg`),o=t(r,`../ssr/server.js`);if(!await se(o,ce.F_OK).then(()=>!0,()=>!1)){console.error(),console.error(n(`red`,`βPlease enable ssrGenerator in ${i.name}/kosmo.config.ts`)),console.error(` SSG generator can not run without SSR server`),console.error();return}let l=te(`${i.name}: SSG`);l.append(`preparing...`);let{createDisposableServer:u}=await import(o);await T(t(r,`../client/assets`),e(r,`assets`),{recursive:!0}),l.append(`bundling routes...`),await S(p(s,...a.map(({factory:e})=>e(i).config?.({kind:`client`,command:`build`})),{root:c.lib(),appType:`custom`,plugins:[y.tsconfigPaths(i),y.nodePrefix()],resolve:{conditions:[`node`]},build:{ssr:c.lib(`ssg.ts`),target:`esnext`,sourcemap:!1,emptyOutDir:!0,rolldownOptions:{output:{dir:r,entryFileNames:`routes.js`,format:`esm`}}}}));try{let t=await import(e(r,`routes.js`)).then(e=>e.default);u(async n=>{for(let[i,a]of t.entries()){l.append(`[ ${i+1} of ${t.length} ] ${a}`);let o=await yn(n,a);o!==void 0&&(await le(e(r,a),{recursive:!0}),await ue(e(r,e(a,`index.html`)),o,`utf8`))}l.succeed(`done β¨`)})}finally{await E(`${r}/routes.js`)}}}}),yn=async(e,t)=>{try{let n=`http://localhost:${e}${t}`;return await(await fetch(n)).text()}catch(e){console.error(n(`red`,`β SSG: Failed generating ${t} route: ${e.message}`));return}},bn=d(()=>{let e={name:`SSG`,slot:`ssg`};return{meta:e,factory:t=>vn(e,t)}}),J={type:`module`,private:!0,name:`@kosmojs/ssr-generator`,version:`0.2.
|
|
4308
|
+
`,gn=f((e,t,n)=>{let{generators:r=[]}=t.config,{createPath:i,createImportHelpers:a}=h(t),{renderToFile:o}=_({helpers:{...a({origin:`lib`}),...b()},partials:{routePartial:Xt}}),{renderToFile:l}=_({helpers:a({origin:`src`})}),u=qt(),d=e=>!e?.trim().length,f=s(n?.templates,pn),p=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await l(i.pages(n.file),n.name===`index`?mn:f(n.name,n),{route:n,message:Jt()},{overwrite:d}):t===`pageLayout`&&await l(i.pages(n.file),fn,{route:n},{overwrite:d})},g=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`?[t]:[]).sort(v),n=e.flatMap(({kind:e,entry:t})=>e===`pageRoute`||e===`pageLayout`?[t]:[]),r=u(m(n));for(let[e,t]of[[`client.ts`,Yt],[`server.ts`,Zt]])await o(i.libEntry(e),t,{pageEntries:n,nestedRoutes:r});await o(i.lib(`router.tsx`),nn,{entries:e,indexRoutes:t})};return{meta:e,options:n,config({command:e}){let{templates:t,...i}={...n};return{oxc:{jsx:{importSource:`solid-js`}},plugins:e===`build`?[w({...i,...r.some(e=>e.meta.slot===`ssr`)?{ssr:!0,solid:{...i?.solid,hydratable:!0}}:{}})]:[w({...i,dev:!0,hot:!0})]}},async start(){for(let[e,t]of[[`env.d.ts`,``],[`solid.ts`,rn],[`unwrap.ts`,an],[`pageSamples/styles.module.css`,en],[`pageSamples/welcome.tsx`,tn],[`pageSamples/page.tsx`,$t],[`pageSamples/404.tsx`,Qt]])await o(i.lib(e),t,{});for(let[e,t]of[[`pages/404.tsx`,dn],[`components/Link.tsx`,sn],[`App.tsx`,on],[`router.ts`,hn]])await l(i.src(e),t,{entryDir:c.entryDir},{overwrite:d});await l(i.src(`index.html`),un,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,cn],[`server.ts`,ln]])await l(i.entry(e),t,{},{overwrite:d})},async watch(e,t){(!t||t.kind===`create`)&&await p(e),await g(e)},async build(e){await p(e),await g(e)}}}),_n=d(e=>{let t={name:`SolidJS`,dependencies:{"solid-js":K.devDependencies[`solid-js`],"@solidjs/router":K.devDependencies[`@solidjs/router`],"path-to-regexp":K.devDependencies[`path-to-regexp`]},jsxImportSource:`solid-js`};return{meta:t,options:e,factory:n=>gn(t,n,e)}}),vn=f((r,i)=>{let{generators:a=[],refineTypeName:o,...s}={...i.config},{createPath:c}=h(i);return{meta:r,async postBuild(){let r=c.distDir(`ssg`),o=t(r,`../ssr/server.js`);if(!await se(o,ce.F_OK).then(()=>!0,()=>!1)){console.error(),console.error(n(`red`,`βPlease enable ssrGenerator in ${i.name}/kosmo.config.ts`)),console.error(` SSG generator can not run without SSR server`),console.error();return}let l=te(`${i.name}: SSG`);l.append(`preparing...`);let{createDisposableServer:u}=await import(o);await T(t(r,`../client/assets`),e(r,`assets`),{recursive:!0}),l.append(`bundling routes...`),await S(p(s,...a.map(({factory:e})=>e(i).config?.({kind:`client`,command:`build`})),{root:c.lib(),appType:`custom`,plugins:[y.tsconfigPaths(i),y.nodePrefix()],resolve:{conditions:[`node`]},build:{ssr:c.lib(`ssg.ts`),target:`esnext`,sourcemap:!1,emptyOutDir:!0,rolldownOptions:{output:{dir:r,entryFileNames:`routes.js`,format:`esm`}}}}));try{let t=await import(e(r,`routes.js`)).then(e=>e.default);u(async n=>{for(let[i,a]of t.entries()){l.append(`[ ${i+1} of ${t.length} ] ${a}`);let o=await yn(n,a);o!==void 0&&(await le(e(r,a),{recursive:!0}),await ue(e(r,e(a,`index.html`)),o,`utf8`))}l.succeed(`done β¨`)})}finally{await E(`${r}/routes.js`)}}}}),yn=async(e,t)=>{try{let n=`http://localhost:${e}${t}`;return await(await fetch(n)).text()}catch(e){console.error(n(`red`,`β SSG: Failed generating ${t} route: ${e.message}`));return}},bn=d(()=>{let e={name:`SSG`,slot:`ssg`};return{meta:e,factory:t=>vn(e,t)}}),J={type:`module`,private:!0,name:`@kosmojs/ssr-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,vite:`^8.2.0`},devDependencies:{"@hono/node-server":`^2.0.12`,hono:`^4.12.32`,"light-my-request":`^6.6.0`,tinyglobby:`^0.2.17`}},xn=`{{#if apiGenerator}}
|
|
4309
4309
|
export { default as apiApp } from "{{ createImport 'api' 'app' }}";
|
|
4310
4310
|
{{else}}
|
|
4311
4311
|
export const apiApp = undefined;
|
|
@@ -4896,7 +4896,7 @@ if (isMain) {
|
|
|
4896
4896
|
process.exit(1);
|
|
4897
4897
|
}
|
|
4898
4898
|
}
|
|
4899
|
-
`,Dn=`string`,On=f((n,r,i)=>{let{generators:a=[],refineTypeName:s,...c}=r.config,{createPath:l,createImportHelpers:u}=h(r),{renderToFile:d}=_({helpers:{...u({origin:`lib`})}});return{meta:n,options:i,async build(e){let t=i?.renderMode?typeof i.renderMode==`string`?()=>i.renderMode:o(i?.renderMode,`string`):()=>Dn,n={renderMode:JSON.stringify(i?.renderMode||null),pageRoutes:e.flatMap(e=>e.kind===`pageRoute`?[{...e.entry,renderMode:t(e.entry.name)}]:[]).sort(v),apiGenerator:a.some(e=>e.meta.slot===`api`)};for(let[e,t]of[[`ssr.ts`,En],[`@ssr/api.ts`,xn],[`@ssr/app.ts`,Sn],[`@ssr/base.ts`,Cn],[`@ssr/fetch.ts`,wn],[`@ssr/routes.ts`,Tn]])await d(l.lib(e),t,n)},async postBuild(){let n=l.distDir(`ssr`),i=[y.tsconfigPaths(r),y.nodePrefix()];await S(p(c,...a.map(({factory:e})=>e(r).config?.({kind:`client`,command:`build`})),{root:l.src(),plugins:i,define:{KOSMO_PRODUCTION_BUILD:`true`,KOSMO_SERVERSIDE_FETCH:`true`},build:{ssr:l.lib(`@ssr/app`),ssrEmitAssets:!0,sourcemap:!0,emptyOutDir:!0,minify:!1,rolldownOptions:{output:{dir:n,entryFileNames:`app.js`,format:`esm`}}}})),await S({root:l.lib(),configFile:!1,appType:`custom`,plugins:i,resolve:{conditions:[`node`]},build:{ssr:l.lib(`ssr.ts`),target:`esnext`,sourcemap:!0,emptyOutDir:!0,rolldownOptions:{output:{dir:e(n,`server`),entryFileNames:`server.js`,format:`esm`}}}}),await T(t(n,`../client`),n,{recursive:!0});for(let e of[`server.js`,`server.js.map`])await T(`${n}/server/${e}`,`${n}/${e}`);await E(`${n}/server`,{recursive:!0,force:!0})}}}),kn=d(e=>{let t={name:`SSR`,slot:`ssr`,dependencies:{tinyglobby:J.devDependencies.tinyglobby,hono:J.devDependencies.hono,"@hono/node-server":J.devDependencies[`@hono/node-server`],"light-my-request":J.devDependencies[`light-my-request`]}};return{meta:t,options:e,factory:n=>On(t,n,e)}}),Y={type:`module`,private:!0,name:`@kosmojs/svelte-generator`,version:`0.2.
|
|
4899
|
+
`,Dn=`string`,On=f((n,r,i)=>{let{generators:a=[],refineTypeName:s,...c}=r.config,{createPath:l,createImportHelpers:u}=h(r),{renderToFile:d}=_({helpers:{...u({origin:`lib`})}});return{meta:n,options:i,async build(e){let t=i?.renderMode?typeof i.renderMode==`string`?()=>i.renderMode:o(i?.renderMode,`string`):()=>Dn,n={renderMode:JSON.stringify(i?.renderMode||null),pageRoutes:e.flatMap(e=>e.kind===`pageRoute`?[{...e.entry,renderMode:t(e.entry.name)}]:[]).sort(v),apiGenerator:a.some(e=>e.meta.slot===`api`)};for(let[e,t]of[[`ssr.ts`,En],[`@ssr/api.ts`,xn],[`@ssr/app.ts`,Sn],[`@ssr/base.ts`,Cn],[`@ssr/fetch.ts`,wn],[`@ssr/routes.ts`,Tn]])await d(l.lib(e),t,n)},async postBuild(){let n=l.distDir(`ssr`),i=[y.tsconfigPaths(r),y.nodePrefix()];await S(p(c,...a.map(({factory:e})=>e(r).config?.({kind:`client`,command:`build`})),{root:l.src(),plugins:i,define:{KOSMO_PRODUCTION_BUILD:`true`,KOSMO_SERVERSIDE_FETCH:`true`},build:{ssr:l.lib(`@ssr/app`),ssrEmitAssets:!0,sourcemap:!0,emptyOutDir:!0,minify:!1,rolldownOptions:{output:{dir:n,entryFileNames:`app.js`,format:`esm`}}}})),await S({root:l.lib(),configFile:!1,appType:`custom`,plugins:i,resolve:{conditions:[`node`]},build:{ssr:l.lib(`ssr.ts`),target:`esnext`,sourcemap:!0,emptyOutDir:!0,rolldownOptions:{output:{dir:e(n,`server`),entryFileNames:`server.js`,format:`esm`}}}}),await T(t(n,`../client`),n,{recursive:!0});for(let e of[`server.js`,`server.js.map`])await T(`${n}/server/${e}`,`${n}/${e}`);await E(`${n}/server`,{recursive:!0,force:!0})}}}),kn=d(e=>{let t={name:`SSR`,slot:`ssr`,dependencies:{tinyglobby:J.devDependencies.tinyglobby,hono:J.devDependencies.hono,"@hono/node-server":J.devDependencies[`@hono/node-server`],"light-my-request":J.devDependencies[`light-my-request`]}};return{meta:t,options:e,factory:n=>On(t,n,e)}}),Y={type:`module`,private:!0,name:`@kosmojs/svelte-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,"@sveltejs/vite-plugin-svelte":`^7.2.0`,vite:`^8.2.0`},devDependencies:{"path-to-regexp":`^8.4.2`,svelte:`^5.56.8`}},An=()=>{let e=[`π Well done! You just created a new Svelte page.`,`π Success! A fresh Svelte page is ready to roll.`,`π Nice work! Another Svelte page added to your app.`,`π§© All set! A new Svelte page has been scaffolded.`,`π§ Scaffold complete! Your new Svelte page is in place.`,`β
Built! Your Svelte page is scaffolded and ready.`,`β¨ Fantastic! Your new Svelte page is good to go.`,`π― Nailed it! A brand new Svelte page just landed.`,`π« Awesome! Another Svelte page joins the party.`,`β‘ Lightning fast! A new Svelte page created successfully.`];return e[Math.floor(Math.random()*e.length)]},jn=`import { hydrate as hydrateOrig, mount as mountOrig } from "svelte";
|
|
4900
4900
|
import type { RouterFactoryReturn } from "@kosmojs/core";
|
|
4901
4901
|
import { clientRenderFactory } from "@kosmojs/core/generators";
|
|
4902
4902
|
|
|
@@ -5762,7 +5762,7 @@ export default routerFactory((routes) => {
|
|
|
5762
5762
|
},
|
|
5763
5763
|
};
|
|
5764
5764
|
});
|
|
5765
|
-
`,$n=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b()}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=e=>!e?.trim().length,u=s(n?.templates,Xn),d=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?Zn:u(n.name,n),{route:n,title:n.name.replace(/\{([^}]+)\}/g,`$1`),message:An()},{overwrite:l}):t===`pageLayout`&&await o(r.pages(n.file),Yn,{route:n},{overwrite:l})},f=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageLayout`?[t]:[]),n=e.flatMap(({kind:e,entry:n})=>{if(e===`pageRoute`){let{name:e,file:r}=n;return[{...n,layouts:t.flatMap(t=>t.name===e||r.startsWith(`${t.name}/`)?[t]:[]).sort(v)}]}return[]}).sort(v);for(let[e,i]of[[`client.ts`,jn],[`server.ts`,Mn]])await a(r.libEntry(e),i,{pageRoutes:n,layouts:t});for(let[e,t]of[[`params.ts`,zn],[`router.ts`,Bn]])await a(r.lib(e),t,{pageRoutes:n})};return{meta:e,options:n,config(){let{templates:e,...t}={...n};return{plugins:de(t)}},async start(){for(let[e,t]of[[`env.d.ts`,Nn],[`svelte.ts`,Vn],[`Layouts.svelte`,Pn],[`use.ts`,Hn],[`pageSamples/styles.module.css`,Ln],[`pageSamples/welcome.svelte`,Rn],[`pageSamples/page.svelte`,In],[`pageSamples/404.svelte`,Fn]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.svelte`,Jn],[`components/Link.svelte`,Wn],[`App.svelte`,Un],[`router.ts`,Qn]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:l});await o(r.src(`index.html`),qn,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,Gn],[`server.ts`,Kn]])await o(r.entry(e),t,{},{overwrite:l})},async watch(e,t){(!t||t.kind===`create`)&&await d(e),await f(e)},async build(e){await d(e),await f(e)}}}),er=d(e=>{let t={name:`Svelte`,dependencies:{"path-to-regexp":Y.devDependencies[`path-to-regexp`]},devDependencies:{svelte:Y.devDependencies.svelte}};return{meta:t,options:e,factory:n=>$n(t,n,e)}}),tr={type:`module`,private:!0,name:`@kosmojs/typebox-generator`,version:`0.2.
|
|
5765
|
+
`,$n=f((e,t,n)=>{let{createPath:r,createImportHelpers:i}=h(t),{renderToFile:a}=_({helpers:{...i({origin:`lib`}),...b()}}),{renderToFile:o}=_({helpers:i({origin:`src`})}),l=e=>!e?.trim().length,u=s(n?.templates,Xn),d=async e=>{for(let{kind:t,entry:n}of e)t===`pageRoute`?await o(r.pages(n.file),n.name===`index`?Zn:u(n.name,n),{route:n,title:n.name.replace(/\{([^}]+)\}/g,`$1`),message:An()},{overwrite:l}):t===`pageLayout`&&await o(r.pages(n.file),Yn,{route:n},{overwrite:l})},f=async e=>{let t=e.flatMap(({kind:e,entry:t})=>e===`pageLayout`?[t]:[]),n=e.flatMap(({kind:e,entry:n})=>{if(e===`pageRoute`){let{name:e,file:r}=n;return[{...n,layouts:t.flatMap(t=>t.name===e||r.startsWith(`${t.name}/`)?[t]:[]).sort(v)}]}return[]}).sort(v);for(let[e,i]of[[`client.ts`,jn],[`server.ts`,Mn]])await a(r.libEntry(e),i,{pageRoutes:n,layouts:t});for(let[e,t]of[[`params.ts`,zn],[`router.ts`,Bn]])await a(r.lib(e),t,{pageRoutes:n})};return{meta:e,options:n,config(){let{templates:e,...t}={...n};return{plugins:de(t)}},async start(){for(let[e,t]of[[`env.d.ts`,Nn],[`svelte.ts`,Vn],[`Layouts.svelte`,Pn],[`use.ts`,Hn],[`pageSamples/styles.module.css`,Ln],[`pageSamples/welcome.svelte`,Rn],[`pageSamples/page.svelte`,In],[`pageSamples/404.svelte`,Fn]])await a(r.lib(e),t,{});for(let[e,t]of[[`pages/404.svelte`,Jn],[`components/Link.svelte`,Wn],[`App.svelte`,Un],[`router.ts`,Qn]])await o(r.src(e),t,{entryDir:c.entryDir},{overwrite:l});await o(r.src(`index.html`),qn,{entryDir:c.entryDir},{overwrite:e=>!e?.trim().length||!e.replace(/<!--[\s\S]*?-->/g,``).trim().length});for(let[e,t]of[[`client.ts`,Gn],[`server.ts`,Kn]])await o(r.entry(e),t,{},{overwrite:l})},async watch(e,t){(!t||t.kind===`create`)&&await d(e),await f(e)},async build(e){await d(e),await f(e)}}}),er=d(e=>{let t={name:`Svelte`,dependencies:{"path-to-regexp":Y.devDependencies[`path-to-regexp`]},devDependencies:{svelte:Y.devDependencies.svelte}};return{meta:t,options:e,factory:n=>$n(t,n,e)}}),tr={type:`module`,private:!0,name:`@kosmojs/typebox-generator`,version:`0.2.6`,cacheVersion:`1`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/typebox-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,crc:`^4.3.2`},devDependencies:{"@kosmojs/core-generator":`workspace:^`,"@kosmojs/koa-generator":`workspace:^`,typebox:`^1.3.8`}},nr=`import Type from "typebox";
|
|
5766
5766
|
|
|
5767
5767
|
/**
|
|
5768
5768
|
* Custom types for JavaScript constructs that have no JSON Schema
|
|
@@ -7138,7 +7138,7 @@ export const validationSchemas: ValidationSchemas = {
|
|
|
7138
7138
|
{{/each}}
|
|
7139
7139
|
},
|
|
7140
7140
|
};
|
|
7141
|
-
`,sr={exactOptionalPropertyTypes:!0},cr=f((e,t,n)=>{let{createPath:r,createImport:i,createImportHelpers:o}=h(t),{renderToFile:s}=_({helpers:{...o({origin:`lib`})}}),{validationMessages:c={},customTypesImport:l=i.lib([`@typebox/custom-types`],{origin:`lib`}),settings:u}={...n},d=async e=>{for(let{kind:t,entry:n}of e){if(t!==`apiRoute`)continue;let e=[n.params,...n.validationDefinitions.flatMap(e=>e.target===`response`?e.variants:[e.schema])].flatMap(({resolvedType:e})=>e?[e]:[]),i=[...new Set(n.validationDefinitions.flatMap(({target:e})=>Object.keys(a).includes(e)?[e]:[]))].map(e=>({target:e,methods:n.methods.flatMap(t=>{let r=n.validationDefinitions.find(n=>n.method===t&&n.target===e);return r?[{route:n.name,method:t,target:e,schema:r.schema,...r.runtimeValidation===void 0?{}:{runtimeValidation:JSON.stringify(r.runtimeValidation)},...r.customErrors===void 0?{}:{customErrors:JSON.stringify(r.customErrors)}}]:[]})})),o=n.methods.flatMap(e=>{let t=n.validationDefinitions.find(t=>t.method===e&&t.target===`response`);return t?[{method:e,variants:t.variants.map(e=>({route:n.name,target:`response`,...e,...t.runtimeValidation===void 0?{}:{runtimeValidation:JSON.stringify(t.runtimeValidation)},...t.customErrors===void 0?{}:{customErrors:JSON.stringify(t.customErrors)}}))}]:[]});await s(r.libApi(n.name,`schemas.ts`),or,{route:n,resolvedTypes:e,requestSchemas:i,responseSchemas:o})}};return{meta:e,options:n,async start(){for(let[e,t]of[[`custom-types.ts`,nr],[`error-handler.ts`,rr],[`index.ts`,ir],[`setup.ts`,ar]])await s(r.lib(`@typebox`,e),t,{validationMessages:JSON.stringify(c),customTypesImport:l,settings:JSON.stringify({...sr,...u})})},async watch(e,t){await d(t?e.filter(({kind:e,entry:n})=>t.kind===`update`&&e===`apiRoute`&&n.fileFullpath===t.file):e)},async build(e){await d(e)}}}),X={PROPERTY:`PROPERTY`,PROPERTIES:`PROPERTIES`,ALLOWED_VALUES:`ALLOWED_VALUES`,FOUND_N_DUPLICATES:`FOUND_N_DUPLICATES`,VALIDATION_PASSED:`VALIDATION_PASSED`,VALIDATION_FAILED_PREFIX:`VALIDATION_FAILED_PREFIX`,ERROR_SUMMARY:`ERROR_SUMMARY`,PLURAL_SUFFIX:`PLURAL_SUFFIX`,FIRST:`FIRST`,SECOND:`SECOND`,THIRD:`THIRD`,FOURTH:`FOURTH`,FIFTH:`FIFTH`,TYPE_INVALID:`TYPE_INVALID`,STRING_MIN_LENGTH:`STRING_MIN_LENGTH`,STRING_MAX_LENGTH:`STRING_MAX_LENGTH`,STRING_PATTERN:`STRING_PATTERN`,STRING_FORMAT:`STRING_FORMAT`,STRING_FORMAT_EMAIL:`STRING_FORMAT_EMAIL`,STRING_FORMAT_DATE:`STRING_FORMAT_DATE`,STRING_FORMAT_DATETIME:`STRING_FORMAT_DATETIME`,STRING_FORMAT_TIME:`STRING_FORMAT_TIME`,STRING_FORMAT_URI:`STRING_FORMAT_URI`,STRING_FORMAT_URL:`STRING_FORMAT_URL`,STRING_FORMAT_UUID:`STRING_FORMAT_UUID`,STRING_FORMAT_IPV4:`STRING_FORMAT_IPV4`,STRING_FORMAT_IPV6:`STRING_FORMAT_IPV6`,STRING_FORMAT_HOSTNAME:`STRING_FORMAT_HOSTNAME`,STRING_FORMAT_JSON_POINTER:`STRING_FORMAT_JSON_POINTER`,STRING_FORMAT_REGEX:`STRING_FORMAT_REGEX`,NUMBER_MINIMUM:`NUMBER_MINIMUM`,NUMBER_MAXIMUM:`NUMBER_MAXIMUM`,NUMBER_EXCLUSIVE_MINIMUM:`NUMBER_EXCLUSIVE_MINIMUM`,NUMBER_EXCLUSIVE_MAXIMUM:`NUMBER_EXCLUSIVE_MAXIMUM`,NUMBER_MULTIPLE_OF:`NUMBER_MULTIPLE_OF`,ARRAY_MIN_ITEMS:`ARRAY_MIN_ITEMS`,ARRAY_MAX_ITEMS:`ARRAY_MAX_ITEMS`,ARRAY_UNIQUE_ITEMS:`ARRAY_UNIQUE_ITEMS`,ARRAY_CONTAINS:`ARRAY_CONTAINS`,ARRAY_MIN_CONTAINS:`ARRAY_MIN_CONTAINS`,ARRAY_MAX_CONTAINS:`ARRAY_MAX_CONTAINS`,ARRAY_PREFIX_ITEMS:`ARRAY_PREFIX_ITEMS`,ARRAY_ITEMS:`ARRAY_ITEMS`,ARRAY_UNEVALUATED_ITEMS:`ARRAY_UNEVALUATED_ITEMS`,TUPLE_MIN_ITEMS:`TUPLE_MIN_ITEMS`,TUPLE_MAX_ITEMS:`TUPLE_MAX_ITEMS`,OBJECT_REQUIRED:`OBJECT_REQUIRED`,OBJECT_ADDITIONAL_PROPERTIES:`OBJECT_ADDITIONAL_PROPERTIES`,OBJECT_MIN_PROPERTIES:`OBJECT_MIN_PROPERTIES`,OBJECT_MAX_PROPERTIES:`OBJECT_MAX_PROPERTIES`,OBJECT_PROPERTY_NAMES:`OBJECT_PROPERTY_NAMES`,OBJECT_DEPENDENCIES:`OBJECT_DEPENDENCIES`,OBJECT_UNEVALUATED_PROPERTIES:`OBJECT_UNEVALUATED_PROPERTIES`,ENUM_MISMATCH:`ENUM_MISMATCH`,CONST_MISMATCH:`CONST_MISMATCH`,CONDITIONAL_IF:`CONDITIONAL_IF`,CONDITIONAL_THEN:`CONDITIONAL_THEN`,CONDITIONAL_ELSE:`CONDITIONAL_ELSE`,COMPOSITION_ONE_OF:`COMPOSITION_ONE_OF`,COMPOSITION_ANY_OF:`COMPOSITION_ANY_OF`,COMPOSITION_ALL_OF:`COMPOSITION_ALL_OF`,COMPOSITION_NOT:`COMPOSITION_NOT`,CONTENT_DISCRIMINATOR:`CONTENT_DISCRIMINATOR`,CONTENT_ENCODING:`CONTENT_ENCODING`,CONTENT_MEDIA_TYPE:`CONTENT_MEDIA_TYPE`,CUSTOM_RANGE:`CUSTOM_RANGE`,CUSTOM_EXCLUSIVE_RANGE:`CUSTOM_EXCLUSIVE_RANGE`,CUSTOM_REGEXP:`CUSTOM_REGEXP`,CUSTOM_DYNAMIC_DEFAULTS:`CUSTOM_DYNAMIC_DEFAULTS`,CUSTOM_SELECT:`CUSTOM_SELECT`,CUSTOM_TRANSFORM:`CUSTOM_TRANSFORM`,CUSTOM_UNIQUE_ITEM_PROPERTIES:`CUSTOM_UNIQUE_ITEM_PROPERTIES`,UNKNOWN:`UNKNOWN`};X.PROPERTY,X.PROPERTIES,X.ALLOWED_VALUES,X.FOUND_N_DUPLICATES,X.VALIDATION_PASSED,X.VALIDATION_FAILED_PREFIX,X.ERROR_SUMMARY,X.PLURAL_SUFFIX,X.FIRST,X.SECOND,X.THIRD,X.FOURTH,X.FIFTH,X.TYPE_INVALID,X.STRING_MIN_LENGTH,X.STRING_MAX_LENGTH,X.STRING_PATTERN,X.STRING_FORMAT,X.STRING_FORMAT_EMAIL,X.STRING_FORMAT_DATE,X.STRING_FORMAT_DATETIME,X.STRING_FORMAT_TIME,X.STRING_FORMAT_URI,X.STRING_FORMAT_URL,X.STRING_FORMAT_UUID,X.STRING_FORMAT_IPV4,X.STRING_FORMAT_IPV6,X.STRING_FORMAT_HOSTNAME,X.STRING_FORMAT_JSON_POINTER,X.STRING_FORMAT_REGEX,X.NUMBER_MINIMUM,X.NUMBER_MAXIMUM,X.NUMBER_EXCLUSIVE_MINIMUM,X.NUMBER_EXCLUSIVE_MAXIMUM,X.NUMBER_MULTIPLE_OF,X.ARRAY_MIN_ITEMS,X.ARRAY_MAX_ITEMS,X.ARRAY_UNIQUE_ITEMS,X.ARRAY_CONTAINS,X.ARRAY_MIN_CONTAINS,X.ARRAY_MAX_CONTAINS,X.ARRAY_PREFIX_ITEMS,X.ARRAY_ITEMS,X.ARRAY_UNEVALUATED_ITEMS,X.TUPLE_MIN_ITEMS,X.TUPLE_MAX_ITEMS,X.OBJECT_REQUIRED,X.OBJECT_ADDITIONAL_PROPERTIES,X.OBJECT_MIN_PROPERTIES,X.OBJECT_MAX_PROPERTIES,X.OBJECT_PROPERTY_NAMES,X.OBJECT_DEPENDENCIES,X.OBJECT_UNEVALUATED_PROPERTIES,X.ENUM_MISMATCH,X.CONST_MISMATCH,X.CONDITIONAL_IF,X.CONDITIONAL_THEN,X.CONDITIONAL_ELSE,X.COMPOSITION_ONE_OF,X.COMPOSITION_ANY_OF,X.COMPOSITION_ALL_OF,X.COMPOSITION_NOT,X.CONTENT_DISCRIMINATOR,X.CONTENT_ENCODING,X.CONTENT_MEDIA_TYPE,X.CUSTOM_RANGE,X.CUSTOM_EXCLUSIVE_RANGE,X.CUSTOM_REGEXP,X.CUSTOM_DYNAMIC_DEFAULTS,X.CUSTOM_SELECT,X.CUSTOM_TRANSFORM,X.CUSTOM_UNIQUE_ITEM_PROPERTIES,X.UNKNOWN;var lr=d(e=>{let t={name:`TypeBox`,resolveTypes:!0,dependencies:{typebox:tr.devDependencies.typebox}};return{meta:t,options:e,factory:n=>cr(t,n,e)}}),Z={type:`module`,private:!0,name:`@kosmojs/vue-generator`,version:`0.2.
|
|
7141
|
+
`,sr={exactOptionalPropertyTypes:!0},cr=f((e,t,n)=>{let{createPath:r,createImport:i,createImportHelpers:o}=h(t),{renderToFile:s}=_({helpers:{...o({origin:`lib`})}}),{validationMessages:c={},customTypesImport:l=i.lib([`@typebox/custom-types`],{origin:`lib`}),settings:u}={...n},d=async e=>{for(let{kind:t,entry:n}of e){if(t!==`apiRoute`)continue;let e=[n.params,...n.validationDefinitions.flatMap(e=>e.target===`response`?e.variants:[e.schema])].flatMap(({resolvedType:e})=>e?[e]:[]),i=[...new Set(n.validationDefinitions.flatMap(({target:e})=>Object.keys(a).includes(e)?[e]:[]))].map(e=>({target:e,methods:n.methods.flatMap(t=>{let r=n.validationDefinitions.find(n=>n.method===t&&n.target===e);return r?[{route:n.name,method:t,target:e,schema:r.schema,...r.runtimeValidation===void 0?{}:{runtimeValidation:JSON.stringify(r.runtimeValidation)},...r.customErrors===void 0?{}:{customErrors:JSON.stringify(r.customErrors)}}]:[]})})),o=n.methods.flatMap(e=>{let t=n.validationDefinitions.find(t=>t.method===e&&t.target===`response`);return t?[{method:e,variants:t.variants.map(e=>({route:n.name,target:`response`,...e,...t.runtimeValidation===void 0?{}:{runtimeValidation:JSON.stringify(t.runtimeValidation)},...t.customErrors===void 0?{}:{customErrors:JSON.stringify(t.customErrors)}}))}]:[]});await s(r.libApi(n.name,`schemas.ts`),or,{route:n,resolvedTypes:e,requestSchemas:i,responseSchemas:o})}};return{meta:e,options:n,async start(){for(let[e,t]of[[`custom-types.ts`,nr],[`error-handler.ts`,rr],[`index.ts`,ir],[`setup.ts`,ar]])await s(r.lib(`@typebox`,e),t,{validationMessages:JSON.stringify(c),customTypesImport:l,settings:JSON.stringify({...sr,...u})})},async watch(e,t){await d(t?e.filter(({kind:e,entry:n})=>t.kind===`update`&&e===`apiRoute`&&n.fileFullpath===t.file):e)},async build(e){await d(e)}}}),X={PROPERTY:`PROPERTY`,PROPERTIES:`PROPERTIES`,ALLOWED_VALUES:`ALLOWED_VALUES`,FOUND_N_DUPLICATES:`FOUND_N_DUPLICATES`,VALIDATION_PASSED:`VALIDATION_PASSED`,VALIDATION_FAILED_PREFIX:`VALIDATION_FAILED_PREFIX`,ERROR_SUMMARY:`ERROR_SUMMARY`,PLURAL_SUFFIX:`PLURAL_SUFFIX`,FIRST:`FIRST`,SECOND:`SECOND`,THIRD:`THIRD`,FOURTH:`FOURTH`,FIFTH:`FIFTH`,TYPE_INVALID:`TYPE_INVALID`,STRING_MIN_LENGTH:`STRING_MIN_LENGTH`,STRING_MAX_LENGTH:`STRING_MAX_LENGTH`,STRING_PATTERN:`STRING_PATTERN`,STRING_FORMAT:`STRING_FORMAT`,STRING_FORMAT_EMAIL:`STRING_FORMAT_EMAIL`,STRING_FORMAT_DATE:`STRING_FORMAT_DATE`,STRING_FORMAT_DATETIME:`STRING_FORMAT_DATETIME`,STRING_FORMAT_TIME:`STRING_FORMAT_TIME`,STRING_FORMAT_URI:`STRING_FORMAT_URI`,STRING_FORMAT_URL:`STRING_FORMAT_URL`,STRING_FORMAT_UUID:`STRING_FORMAT_UUID`,STRING_FORMAT_IPV4:`STRING_FORMAT_IPV4`,STRING_FORMAT_IPV6:`STRING_FORMAT_IPV6`,STRING_FORMAT_HOSTNAME:`STRING_FORMAT_HOSTNAME`,STRING_FORMAT_JSON_POINTER:`STRING_FORMAT_JSON_POINTER`,STRING_FORMAT_REGEX:`STRING_FORMAT_REGEX`,NUMBER_MINIMUM:`NUMBER_MINIMUM`,NUMBER_MAXIMUM:`NUMBER_MAXIMUM`,NUMBER_EXCLUSIVE_MINIMUM:`NUMBER_EXCLUSIVE_MINIMUM`,NUMBER_EXCLUSIVE_MAXIMUM:`NUMBER_EXCLUSIVE_MAXIMUM`,NUMBER_MULTIPLE_OF:`NUMBER_MULTIPLE_OF`,ARRAY_MIN_ITEMS:`ARRAY_MIN_ITEMS`,ARRAY_MAX_ITEMS:`ARRAY_MAX_ITEMS`,ARRAY_UNIQUE_ITEMS:`ARRAY_UNIQUE_ITEMS`,ARRAY_CONTAINS:`ARRAY_CONTAINS`,ARRAY_MIN_CONTAINS:`ARRAY_MIN_CONTAINS`,ARRAY_MAX_CONTAINS:`ARRAY_MAX_CONTAINS`,ARRAY_PREFIX_ITEMS:`ARRAY_PREFIX_ITEMS`,ARRAY_ITEMS:`ARRAY_ITEMS`,ARRAY_UNEVALUATED_ITEMS:`ARRAY_UNEVALUATED_ITEMS`,TUPLE_MIN_ITEMS:`TUPLE_MIN_ITEMS`,TUPLE_MAX_ITEMS:`TUPLE_MAX_ITEMS`,OBJECT_REQUIRED:`OBJECT_REQUIRED`,OBJECT_ADDITIONAL_PROPERTIES:`OBJECT_ADDITIONAL_PROPERTIES`,OBJECT_MIN_PROPERTIES:`OBJECT_MIN_PROPERTIES`,OBJECT_MAX_PROPERTIES:`OBJECT_MAX_PROPERTIES`,OBJECT_PROPERTY_NAMES:`OBJECT_PROPERTY_NAMES`,OBJECT_DEPENDENCIES:`OBJECT_DEPENDENCIES`,OBJECT_UNEVALUATED_PROPERTIES:`OBJECT_UNEVALUATED_PROPERTIES`,ENUM_MISMATCH:`ENUM_MISMATCH`,CONST_MISMATCH:`CONST_MISMATCH`,CONDITIONAL_IF:`CONDITIONAL_IF`,CONDITIONAL_THEN:`CONDITIONAL_THEN`,CONDITIONAL_ELSE:`CONDITIONAL_ELSE`,COMPOSITION_ONE_OF:`COMPOSITION_ONE_OF`,COMPOSITION_ANY_OF:`COMPOSITION_ANY_OF`,COMPOSITION_ALL_OF:`COMPOSITION_ALL_OF`,COMPOSITION_NOT:`COMPOSITION_NOT`,CONTENT_DISCRIMINATOR:`CONTENT_DISCRIMINATOR`,CONTENT_ENCODING:`CONTENT_ENCODING`,CONTENT_MEDIA_TYPE:`CONTENT_MEDIA_TYPE`,CUSTOM_RANGE:`CUSTOM_RANGE`,CUSTOM_EXCLUSIVE_RANGE:`CUSTOM_EXCLUSIVE_RANGE`,CUSTOM_REGEXP:`CUSTOM_REGEXP`,CUSTOM_DYNAMIC_DEFAULTS:`CUSTOM_DYNAMIC_DEFAULTS`,CUSTOM_SELECT:`CUSTOM_SELECT`,CUSTOM_TRANSFORM:`CUSTOM_TRANSFORM`,CUSTOM_UNIQUE_ITEM_PROPERTIES:`CUSTOM_UNIQUE_ITEM_PROPERTIES`,UNKNOWN:`UNKNOWN`};X.PROPERTY,X.PROPERTIES,X.ALLOWED_VALUES,X.FOUND_N_DUPLICATES,X.VALIDATION_PASSED,X.VALIDATION_FAILED_PREFIX,X.ERROR_SUMMARY,X.PLURAL_SUFFIX,X.FIRST,X.SECOND,X.THIRD,X.FOURTH,X.FIFTH,X.TYPE_INVALID,X.STRING_MIN_LENGTH,X.STRING_MAX_LENGTH,X.STRING_PATTERN,X.STRING_FORMAT,X.STRING_FORMAT_EMAIL,X.STRING_FORMAT_DATE,X.STRING_FORMAT_DATETIME,X.STRING_FORMAT_TIME,X.STRING_FORMAT_URI,X.STRING_FORMAT_URL,X.STRING_FORMAT_UUID,X.STRING_FORMAT_IPV4,X.STRING_FORMAT_IPV6,X.STRING_FORMAT_HOSTNAME,X.STRING_FORMAT_JSON_POINTER,X.STRING_FORMAT_REGEX,X.NUMBER_MINIMUM,X.NUMBER_MAXIMUM,X.NUMBER_EXCLUSIVE_MINIMUM,X.NUMBER_EXCLUSIVE_MAXIMUM,X.NUMBER_MULTIPLE_OF,X.ARRAY_MIN_ITEMS,X.ARRAY_MAX_ITEMS,X.ARRAY_UNIQUE_ITEMS,X.ARRAY_CONTAINS,X.ARRAY_MIN_CONTAINS,X.ARRAY_MAX_CONTAINS,X.ARRAY_PREFIX_ITEMS,X.ARRAY_ITEMS,X.ARRAY_UNEVALUATED_ITEMS,X.TUPLE_MIN_ITEMS,X.TUPLE_MAX_ITEMS,X.OBJECT_REQUIRED,X.OBJECT_ADDITIONAL_PROPERTIES,X.OBJECT_MIN_PROPERTIES,X.OBJECT_MAX_PROPERTIES,X.OBJECT_PROPERTY_NAMES,X.OBJECT_DEPENDENCIES,X.OBJECT_UNEVALUATED_PROPERTIES,X.ENUM_MISMATCH,X.CONST_MISMATCH,X.CONDITIONAL_IF,X.CONDITIONAL_THEN,X.CONDITIONAL_ELSE,X.COMPOSITION_ONE_OF,X.COMPOSITION_ANY_OF,X.COMPOSITION_ALL_OF,X.COMPOSITION_NOT,X.CONTENT_DISCRIMINATOR,X.CONTENT_ENCODING,X.CONTENT_MEDIA_TYPE,X.CUSTOM_RANGE,X.CUSTOM_EXCLUSIVE_RANGE,X.CUSTOM_REGEXP,X.CUSTOM_DYNAMIC_DEFAULTS,X.CUSTOM_SELECT,X.CUSTOM_TRANSFORM,X.CUSTOM_UNIQUE_ITEM_PROPERTIES,X.UNKNOWN;var lr=d(e=>{let t={name:`TypeBox`,resolveTypes:!0,dependencies:{typebox:tr.devDependencies.typebox}};return{meta:t,options:e,factory:n=>cr(t,n,e)}}),Z={type:`module`,private:!0,name:`@kosmojs/vue-generator`,version:`0.2.6`,author:`Slee Woo`,license:`MIT`,files:[`pkg/*`],exports:{".":{types:`./pkg/index.d.ts`,default:`./pkg/index.js`}},scripts:{build:`wsbuild src/index.ts`,test:`vitest --root ../.. --project generators/vue-generator`},dependencies:{"@kosmojs/core":`workspace:^`,"@kosmojs/lib":`workspace:^`,"@vitejs/plugin-vue":`^6.0.8`},devDependencies:{"path-to-regexp":`^8.4.2`,vue:`^3.5.40`,"vue-router":`^5.2.0`}},Q=e=>{let t=e=>e.kind===`splat`?`:${e.name}(.*)?`:e.kind===`optional`?`:${e.name}?`:`:${e.name}`;return e.flatMap(e=>e.kind===`static`?[e.parts[0].value]:e.kind===`param`?[t(e.parts[0])]:[e.parts.map(e=>e.type===`static`?e.value:t(e)).join(``)]).join(`/`)},ur=()=>{let t=e=>e?.kind===`param`&&e.parts[0]?.kind===`splat`,n=(r,i)=>r.flatMap(({index:r,layout:a,children:o})=>{let{name:s,pathTokens:c}={...r,...a};if(!c)return[];let l=`${s}/layout`,u=i?Q(c):e(`/`,Q(c)),d=c.at(-1);return t(d)?r&&a?[{name:l,path:u,component:a.id,children:[{name:s,path:``,component:r.id}]}]:r?[{path:u,children:[{name:s,path:``,component:r.id},...n(o,s)]}]:a?[{name:l,path:u,component:a.id,children:n(o,s)}]:[]:r&&a?[{name:l,path:u,component:a.id,children:[{name:s,path:``,component:r.id},...n(o,s)]}]:r?[{path:u,children:[{name:s,path:``,component:r.id},...n(o,s)]}]:a?[{name:l,path:u,component:a.id,children:n(o,s)}]:[]});return n},dr=()=>{let e=[`π Well done! You just created a new Vue route.`,`π Success! A fresh Vue route is ready to roll.`,`π Nice work! Another Vue route added to your app.`,`π§© All set! A new Vue route has been scaffolded.`,`π§ Scaffold complete! Your new Vue route is in place.`,`β
Built! Your Vue route is scaffolded and ready.`,`β¨ Fantastic! Your new Vue route is good to go.`,`π― Nailed it! A brand new Vue route just landed.`,`π« Awesome! Another Vue route joins the party.`,`β‘ Lightning fast! A new Vue route created successfully.`];return e[Math.floor(Math.random()*e.length)]},fr=`import type { App } from "vue";
|
|
7142
7142
|
import type { RouterFactoryReturn } from "@kosmojs/core";
|
|
7143
7143
|
import { clientRenderFactory } from "@kosmojs/core/generators";
|
|
7144
7144
|
|