velloo 0.4.0 → 0.5.0
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/README.md +29 -7
- package/canvas/assets/index-BDBBHdHH.css +2 -0
- package/canvas/assets/index-QdsLJNY9.js +29 -0
- package/canvas/assets/lucide-all-R8DUyY-B.js +1 -0
- package/canvas/index.html +2 -2
- package/chunk-0rdf6trc.js +2 -0
- package/{chunk-tkvb3wb8.js → chunk-0wafc9aw.js} +1 -1
- package/chunk-0wqxb8r9.js +3 -0
- package/{chunk-hzjzmkp6.js → chunk-10hap8kc.js} +1 -1
- package/chunk-18eqh3s1.js +2 -0
- package/chunk-19xyzep8.js +2 -0
- package/{chunk-sn9vg42q.js → chunk-1h3gqy7w.js} +1 -1
- package/{chunk-3kqtny5t.js → chunk-33t0csxs.js} +2 -2
- package/{chunk-0r80246c.js → chunk-3ffs39e8.js} +1 -1
- package/chunk-42bj6r30.js +3 -0
- package/chunk-49w26e94.js +5 -0
- package/{chunk-nte0t7v3.js → chunk-4pkw6d9n.js} +2 -2
- package/{chunk-vh4144az.js → chunk-4sjvdakg.js} +1 -1
- package/chunk-5f0xv80x.js +5 -0
- package/{chunk-2fgfex9b.js → chunk-5ma8zbty.js} +1 -1
- package/{chunk-8yz604tw.js → chunk-5y9hem1j.js} +1 -1
- package/chunk-66qgm91k.js +708 -0
- package/{chunk-46xykc71.js → chunk-675tr675.js} +1 -1
- package/{chunk-7cktk5qr.js → chunk-6cgvzwec.js} +1 -1
- package/chunk-6k05kqnc.js +3 -0
- package/{chunk-09385g5r.js → chunk-6ytv1v2r.js} +1 -1
- package/{chunk-33r6266k.js → chunk-75sc3adm.js} +1 -1
- package/chunk-7cexzg71.js +2 -0
- package/chunk-98rann8t.js +2 -0
- package/{chunk-e56eb38j.js → chunk-a16mz9zf.js} +1 -1
- package/chunk-afe25dpr.js +2 -0
- package/{chunk-zkn1m8tw.js → chunk-ahm4zd56.js} +1 -1
- package/chunk-asvdqkdp.js +6 -0
- package/{chunk-8sfx5x8k.js → chunk-b3x80jc1.js} +1 -1
- package/{chunk-4rvmpsda.js → chunk-cdqah1hy.js} +1 -1
- package/{chunk-z1r0sc3k.js → chunk-cqt1dpxd.js} +1 -1
- package/{chunk-k10n8na7.js → chunk-d4r0myxr.js} +1 -1
- package/{chunk-cdxy4xzs.js → chunk-d9kx7v12.js} +1 -1
- package/{chunk-t4zss1tk.js → chunk-df557bn4.js} +1 -1
- package/{chunk-25j8vgpa.js → chunk-edgwx026.js} +1 -1
- package/chunk-emv1j50t.js +2 -0
- package/{chunk-3gbmq4jz.js → chunk-ewgdcgrk.js} +1 -1
- package/chunk-f45p6kcb.js +2 -0
- package/{chunk-8krqgzny.js → chunk-gn9wcc1b.js} +1 -1
- package/{chunk-vbe2r4kv.js → chunk-hr3gbak5.js} +2 -2
- package/{chunk-y0rwf1ze.js → chunk-j7tzbt3d.js} +1 -1
- package/chunk-mm8wv3bg.js +3 -0
- package/chunk-nbbnb5e9.js +3 -0
- package/{chunk-c4fym47a.js → chunk-ngbqd7kb.js} +32 -12
- package/chunk-nkqtnwzz.js +2 -0
- package/{chunk-jtsn41cs.js → chunk-q3kf8243.js} +1 -1
- package/{chunk-c6hywdvq.js → chunk-qpv28z8d.js} +1 -1
- package/{chunk-n5acf0s3.js → chunk-rd65xm6r.js} +1 -1
- package/{chunk-ys3s5gaa.js → chunk-ryga3ny1.js} +1 -1
- package/{chunk-cvn689d5.js → chunk-sb5h27w9.js} +2 -2
- package/chunk-tw4kw4ps.js +22 -0
- package/chunk-v6c3h9ft.js +3 -0
- package/chunk-vgx47anc.js +3 -0
- package/chunk-vrvkvb0v.js +244 -0
- package/{chunk-v0syg2hx.js → chunk-vryadew3.js} +9 -7
- package/chunk-w6f40y2x.js +11 -0
- package/{chunk-c5zjen06.js → chunk-we8hvy6e.js} +1 -1
- package/chunk-wkqrb2tz.js +4 -0
- package/{chunk-js6mz7h1.js → chunk-xzkczmgg.js} +1 -1
- package/{chunk-8yadb6xz.js → chunk-ycrddh47.js} +1 -1
- package/{chunk-bhx8k09w.js → chunk-z78c1kf8.js} +1 -1
- package/cli.js +1 -1
- package/package.json +3 -1
- package/pkgs/provider-html/src/index.ts +68 -0
- package/pkgs/provider-html/src/registry.ts +121 -0
- package/pkgs/provider-html/src/version.ts +1 -0
- package/pkgs/provider-none/src/components-inline.tsx +12 -3
- package/pkgs/provider-none/src/components.tsx +11 -3
- package/pkgs/provider-none/src/manifest.ts +1 -0
- package/pkgs/schema/src/comment.ts +12 -0
- package/pkgs/schema/src/config.ts +33 -1
- package/pkgs/schema/src/css-declarations.ts +41 -0
- package/pkgs/schema/src/index.ts +4 -0
- package/pkgs/schema/src/theme.ts +40 -0
- package/plugins/claude/velloo/agents/velloo-design-reviewer.md +56 -13
- package/plugins/claude/velloo/agents/velloo-designer.md +4 -1
- package/skills/velloo-setup/SKILL.md +19 -55
- package/canvas/assets/index-CSSyvzzo.css +0 -2
- package/canvas/assets/index-MXiDRs_Q.js +0 -29
- package/canvas/assets/lucide-all-BSrW0hTo.js +0 -1
- package/chunk-0zen7bzb.js +0 -3
- package/chunk-1tdh4h14.js +0 -6
- package/chunk-38ev3cp3.js +0 -3
- package/chunk-5qd2ykvw.js +0 -26
- package/chunk-6qfyem23.js +0 -2
- package/chunk-6z0kpe65.js +0 -2
- package/chunk-8g5ghy46.js +0 -5
- package/chunk-cgzhcvsj.js +0 -2
- package/chunk-egccxmed.js +0 -688
- package/chunk-fjbzk4sw.js +0 -3
- package/chunk-gsne0ap4.js +0 -2
- package/chunk-nc5k1ez4.js +0 -2
- package/chunk-njhdn9j0.js +0 -4
- package/chunk-q4d60wr3.js +0 -3
- package/chunk-rsy246re.js +0 -2
- package/chunk-syg6k8m0.js +0 -10
- package/chunk-t8xk4thc.js +0 -244
- package/chunk-tqwe5tc3.js +0 -2
- package/chunk-va9v9y5m.js +0 -2
- package/chunk-yjmawrv5.js +0 -5
package/chunk-tqwe5tc3.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import{registry2,loadManifest2}from"./chunk-vbe2r4kv.js";import"./chunk-c6hywdvq.js";import{snapshotVersion2,entryCssPath2,componentsDir2}from"./chunk-cvn689d5.js";export{componentsDir2 as componentsDir,entryCssPath2 as entryCssPath,loadManifest2 as loadManifest,registry2 as registry,snapshotVersion2 as snapshotVersion};
|
package/chunk-va9v9y5m.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import{init_default,runInit2}from"./chunk-5qd2ykvw.js";import"./chunk-38ev3cp3.js";import"./chunk-3kqtny5t.js";import"./chunk-8sfx5x8k.js";import"./chunk-46xykc71.js";import"./chunk-njhdn9j0.js";import"./chunk-v0syg2hx.js";import"./chunk-vh4144az.js";import"./chunk-2fgfex9b.js";import"./chunk-1tdh4h14.js";import"./chunk-80fjfyha.js";import"./chunk-egccxmed.js";import"./chunk-c4fym47a.js";import"./chunk-25j8vgpa.js";import"./chunk-gsne0ap4.js";import"./chunk-tkvb3wb8.js";import"./chunk-z1r0sc3k.js";import"./chunk-q4d60wr3.js";import"./chunk-s23gtejf.js";import"./chunk-nte0t7v3.js";import"./chunk-cvn689d5.js";export{init_default as default,runInit2 as runInit};
|
package/chunk-yjmawrv5.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import{ThemeSchema}from"./chunk-nte0t7v3.js";import{colorizeDiff,emitTheme,emitNativeTheme,loadDesignFolder,resolveProviders}from"./chunk-egccxmed.js";import"./chunk-gsne0ap4.js";import"./chunk-c4fym47a.js";import"./chunk-80fjfyha.js";import"./chunk-s23gtejf.js";import{detectHost}from"./chunk-38ev3cp3.js";import{DESIGN_ARG_DESCRIPTION,resolveDesign}from"./chunk-46xykc71.js";import{defineCommand}from"./chunk-2smsg2ct.js";import{readFile}from"fs/promises";import{isAbsolute,join,resolve}from"path";import{stdin,stdout}from"process";import{createInterface}from"readline/promises";async function readMaybe(path){try{return await readFile(path,"utf8")}catch{return}}async function themeEmitter(folderRoot,theme,outDir,cssOnly,tailwind3){let design=await loadDesignFolder(folderRoot),{defaultProvider}=await resolveProviders(design.config,folderRoot),adapter=defaultProvider;if(adapter.themeToNative&&adapter.themeModule){let toNative=adapter.themeToNative.bind(adapter),spec=adapter.themeModule;return{native:!0,produce:(apply)=>emitNativeTheme(toNative(theme),{spec,outputDir:outDir,apply,...theme.colorsDark?{darkThemeOptions:toNative(theme,!0)}:{},sourceTheme:theme})}}let customCss=await readMaybe(join(folderRoot,"theme","custom.css"));return{native:!1,produce:(apply)=>emitTheme(theme,{outputDir:outDir,apply,cssOnly,...customCss?{customCss}:{},...tailwind3?{tailwindMajor:3}:{}})}}var exportTheme=defineCommand({meta:{name:"export",description:"Export DTCG tokens.json plus the framework theme in diff mode \u2014 Tailwind v4 globals.css by default, or v3 CSS + preset when detected"},args:{to:{type:"string",required:!0,description:"Target app directory (writes <to>/app/globals.css and <to>/tailwind.config.ts)"},design:{type:"string",description:DESIGN_ARG_DESCRIPTION},theme:{type:"string",description:"Path to theme JSON (default: the design's theme/default.json)"},apply:{type:"boolean",description:"Write files instead of printing diffs. Default: dry-run."},"css-only":{type:"boolean",description:"Skip tailwind.config.ts (CSS-only export)."},"force-v4":{type:"boolean",description:"Emit the v4 artifacts even when the target app looks like Tailwind v3."}},async run({args}){let folderRoot=await resolveDesign(args.design,"theme export",{designFlag:"--design"}),themePath=args.theme?resolve(args.theme):join(folderRoot,"theme","default.json"),outDir=isAbsolute(args.to)?args.to:resolve(args.to),themeJson=JSON.parse(await readFile(themePath,"utf8")),theme=ThemeSchema.parse(themeJson),tailwind3=!args["force-v4"]&&detectHost(outDir).tailwindMajor===3,{native,produce}=await themeEmitter(folderRoot,theme,outDir,Boolean(args["css-only"]),tailwind3);if(!native&&tailwind3)console.log("velloo theme export: target looks like Tailwind v3 \u2014 emitting velloo-theme.css + velloo.preset (pass --force-v4 for the v4 artifacts).");let result=await produce(Boolean(args.apply)),useColor=stdout.isTTY===!0,anyChange=!1;for(let warning of result.warnings)console.error(`velloo theme export: warning: ${warning}`);for(let file of result.files){if(file.diff.identical){console.log(`velloo theme export: ${file.path} is already up to date.`);continue}if(anyChange=!0,file.applied)console.log(`velloo theme export: wrote ${file.path}`);else{let rendered=useColor?colorizeDiff(file.diff.diff):file.diff.diff;stdout.write(`${rendered}
|
|
3
|
-
`),stdout.write(`Would write to: ${file.path}
|
|
4
|
-
|
|
5
|
-
`)}}for(let note of result.notes)console.log(`velloo theme export: ${note}`);if(!anyChange||args.apply)return;if(!stdin.isTTY){console.log("(non-TTY) re-run with --apply to write the files.");return}let rl=createInterface({input:stdin,output:stdout}),answer=(await rl.question("Apply all? (y/N) ")).trim().toLowerCase();if(rl.close(),answer==="y"||answer==="yes"){let final=await produce(!0);for(let file of final.files)if(file.applied)console.log(`velloo theme export: wrote ${file.path}`)}else console.log("velloo theme export: skipped (no changes written).")}}),theme_default=defineCommand({meta:{name:"theme",description:"Work with a design's theme"},subCommands:{export:exportTheme}});export{theme_default as default};
|