@troychaplin/component2block 0.1.0 → 0.1.1

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 CHANGED
@@ -38,6 +38,17 @@ Your components always reference `--prefix--*` CSS variables. In Storybook, thos
38
38
  - **Storybook preset** — Auto-injects all generated styles into Storybook. No manual imports.
39
39
  - **WordPress default layer** — The generated `theme.json` injects at the lowest priority layer, so any theme can override it.
40
40
 
41
+ ## Getting Started
42
+
43
+ Scaffold a config file, then generate:
44
+
45
+ ```bash
46
+ npx c2b init # creates c2b.config.json from the example template
47
+ npx c2b generate # reads config and generates all output files
48
+ ```
49
+
50
+ Edit `c2b.config.json` to match your project before generating.
51
+
41
52
  ## Quick Example
42
53
 
43
54
  ```json
@@ -71,9 +82,14 @@ Then in your components:
71
82
  ## CLI
72
83
 
73
84
  ```
74
- npx c2b generate [options]
85
+ npx c2b <command> [options]
86
+
87
+ Commands:
88
+ init Create a c2b.config.json from the example template
89
+ generate Read config and generate all output files
90
+ help Show this help message
75
91
 
76
- Options:
92
+ Options (generate):
77
93
  --config <path> Path to config file (default: ./c2b.config.json)
78
94
  --dry-run Output to stdout instead of writing files
79
95
  ```
@@ -147,7 +163,7 @@ import {
147
163
  ```bash
148
164
  npm install
149
165
  npm run build # Compile TypeScript
150
- npm test # Run 191 tests
166
+ npm test # Run 215 tests
151
167
  ```
152
168
 
153
169
  ## Screenshots
@@ -0,0 +1,119 @@
1
+ {
2
+ "prefix": "design-system",
3
+
4
+ "output": {
5
+ "tokensPath": "src/styles/tokens.css",
6
+ "wpDir": "dist/c2b",
7
+ "wpThemeable": false
8
+ },
9
+
10
+ "tokens": {
11
+ "layout": {
12
+ "contentSize": "768px",
13
+ "wideSize": "1280px"
14
+ },
15
+
16
+ "color": {
17
+ "primary": "#0073aa",
18
+ "primary-hover": { "value": "#005a87", "cssOnly": true },
19
+ "secondary": "#23282d",
20
+ "secondary-hover": { "value": "#1a1e21", "cssOnly": true },
21
+ "success": "#00a32a",
22
+ "warning": "#dba617",
23
+ "error": "#d63638",
24
+ "info": "#72aee6",
25
+ "off-white": "#f8f8f8",
26
+ "text-black": "#191919"
27
+ },
28
+
29
+ "gradient": {
30
+ "fade-out": {
31
+ "value": "linear-gradient(135deg,rgb(134,255,223) 0%,rgb(143,51,228) 100%)",
32
+ "slug": "custom-fade-out"
33
+ },
34
+ "fade-in": {
35
+ "value": "linear-gradient(0deg,rgb(227,7,97) 0%,rgb(0,195,255) 100%)",
36
+ "slug": "custom-fade-in"
37
+ }
38
+ },
39
+
40
+ "fontFamily": {
41
+ "inter": {
42
+ "value": "Inter, sans-serif",
43
+ "fontFace": [
44
+ { "weight": "400", "style": "normal", "src": "inter-400-normal.woff2" }
45
+ ]
46
+ },
47
+ "system": "-apple-system, BlinkMacSystemFont, sans-serif"
48
+ },
49
+
50
+ "fontSize": {
51
+ "small": { "min": "0.875rem", "max": "1rem" },
52
+ "medium": { "min": "1rem", "max": "1.125rem" },
53
+ "large": { "min": "1.125rem", "max": "1.25rem" },
54
+ "x-large": { "min": "1.25rem", "max": "1.5rem" }
55
+ },
56
+
57
+ "spacing": {
58
+ "2x-small": { "value": "0.25rem", "slug": "20" },
59
+ "x-small": { "value": "0.5rem", "slug": "30" },
60
+ "small": { "value": "min(0.75rem, 1vw)", "slug": "40" },
61
+ "medium": { "value": "min(1.5rem, 2vw)", "slug": "50" },
62
+ "large": { "value": "min(2.25rem, 3vw)", "slug": "60" },
63
+ "x-large": { "value": "min(3rem, 4vw)", "slug": "70" },
64
+ "2x-large": { "value": "min(4.5rem, 6vw)", "slug": "80" }
65
+ },
66
+
67
+ "shadow": {
68
+ "natural": "6px 6px 9px rgba(0, 0, 0, 0.2)",
69
+ "deep": "12px 12px 50px rgba(0, 0, 0, 0.4)",
70
+ "sharp": "6px 6px 0px rgba(0, 0, 0, 0.2)",
71
+ "outlined": "6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0)",
72
+ "crisp": "6px 6px 0px rgb(0, 0, 0)"
73
+ },
74
+
75
+ "fontWeight": {
76
+ "normal": "400",
77
+ "bold": "700"
78
+ },
79
+
80
+ "radius": {
81
+ "sm": "2px",
82
+ "md": "4px",
83
+ "lg": "8px"
84
+ }
85
+ },
86
+
87
+ "baseStyles": {
88
+ "body": {
89
+ "fontFamily": "inter",
90
+ "fontSize": "medium",
91
+ "fontWeight": "400",
92
+ "lineHeight": "1.6",
93
+ "color": "text-black",
94
+ "background": "off-white"
95
+ },
96
+ "heading": {
97
+ "fontFamily": "inter",
98
+ "color": "primary"
99
+ },
100
+ "h1": { "fontSize": "4.5rem", "fontWeight": "500" },
101
+ "h2": { "fontSize": "3rem", "fontWeight": "500" },
102
+ "h3": { "fontSize": "2.5rem", "fontWeight": "500" },
103
+ "h4": { "fontSize": "2rem", "fontWeight": "500" },
104
+ "h5": { "fontSize": "1.5rem", "fontWeight": "500" },
105
+ "h6": { "fontSize": "1.45rem", "fontWeight": "500", "fontStyle": "italic" },
106
+ "caption": { "fontSize": "small", "fontStyle": "italic", "fontWeight": "300", "color": "warning" },
107
+ "button": { "color": "off-white", "background": "primary" },
108
+ "link": { "color": "primary", "hoverColor": "error" },
109
+ "spacing": {
110
+ "blockGap": "medium",
111
+ "padding": {
112
+ "top": "0",
113
+ "right": "large",
114
+ "bottom": "0",
115
+ "left": "large"
116
+ }
117
+ }
118
+ }
119
+ }
package/dist/cli.js CHANGED
@@ -1,11 +1,22 @@
1
1
  #!/usr/bin/env node
2
2
  import { generate } from './index.js';
3
+ import { init } from './init.js';
3
4
  const args = process.argv.slice(2);
4
5
  const command = args[0];
5
6
  if (!command || command === 'help' || command === '--help') {
6
7
  printUsage();
7
8
  process.exit(0);
8
9
  }
10
+ if (command === 'init') {
11
+ try {
12
+ init();
13
+ }
14
+ catch (error) {
15
+ console.error(`c2b: ${error instanceof Error ? error.message : 'An unexpected error occurred.'}`);
16
+ process.exit(1);
17
+ }
18
+ process.exit(0);
19
+ }
9
20
  if (command !== 'generate') {
10
21
  console.error(`Unknown command: ${command}`);
11
22
  printUsage();
@@ -75,15 +86,16 @@ function printUsage() {
75
86
  c2b — Generate WordPress assets from design token config
76
87
 
77
88
  Usage:
78
- c2b generate [options]
79
-
80
- Options:
81
- --config <path> Path to config file (default: ./c2b.config.json)
82
- --dry-run Output to stdout instead of writing files
89
+ c2b <command> [options]
83
90
 
84
91
  Commands:
92
+ init Create a c2b.config.json from the example template
85
93
  generate Read config and generate all output files
86
94
  help Show this help message
95
+
96
+ Options (generate):
97
+ --config <path> Path to config file (default: ./c2b.config.json)
98
+ --dry-run Output to stdout instead of writing files
87
99
  `.trim());
88
100
  }
89
101
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/init.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ export interface InitOptions {
2
+ cwd?: string;
3
+ }
4
+ export declare function init(options?: InitOptions): void;
5
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAqBhD"}
package/dist/init.js ADDED
@@ -0,0 +1,35 @@
1
+ import { existsSync, readFileSync, writeFileSync } from 'node:fs';
2
+ import { resolve, dirname, join } from 'node:path';
3
+ import { fileURLToPath } from 'node:url';
4
+ const CONFIG_FILENAME = 'c2b.config.json';
5
+ const EXAMPLE_FILENAME = 'c2b.config.example.json';
6
+ /**
7
+ * Resolve the path to c2b.config.example.json shipped with the package.
8
+ * Works whether the package is installed globally, locally, or run from source.
9
+ */
10
+ function getExampleConfigPath() {
11
+ const thisFile = fileURLToPath(import.meta.url);
12
+ // Package root is one level up from src/ (source) or dist/ (compiled)
13
+ const packageRoot = dirname(dirname(thisFile));
14
+ return join(packageRoot, EXAMPLE_FILENAME);
15
+ }
16
+ export function init(options) {
17
+ const cwd = options?.cwd ?? process.cwd();
18
+ const targetPath = resolve(cwd, CONFIG_FILENAME);
19
+ if (existsSync(targetPath)) {
20
+ console.error(`c2b: ${CONFIG_FILENAME} already exists. Remove it first if you want to reinitialize.`);
21
+ process.exit(1);
22
+ }
23
+ const examplePath = getExampleConfigPath();
24
+ let content;
25
+ try {
26
+ content = readFileSync(examplePath, 'utf-8');
27
+ }
28
+ catch {
29
+ throw new Error(`Could not read example config at ${examplePath}`);
30
+ }
31
+ writeFileSync(targetPath, content, 'utf-8');
32
+ console.log(`c2b: Created ${CONFIG_FILENAME}`);
33
+ console.log(` Edit it to match your project, then run: c2b generate`);
34
+ }
35
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAC1C,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAEnD;;;GAGG;AACH,SAAS,oBAAoB;IAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChD,sEAAsE;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;AAC7C,CAAC;AAMD,MAAM,UAAU,IAAI,CAAC,OAAqB;IACxC,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAEjD,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,QAAQ,eAAe,+DAA+D,CAAC,CAAC;QACtG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,oBAAoB,EAAE,CAAC;IAE3C,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,oCAAoC,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAe,EAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;AACzE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@troychaplin/component2block",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Generate WordPress theme.json and CSS token files from a single config for component libraries",
5
5
  "type": "module",
6
6
  "bin": {
@@ -20,7 +20,8 @@
20
20
  },
21
21
  "files": [
22
22
  "dist",
23
- "templates"
23
+ "templates",
24
+ "c2b.config.example.json"
24
25
  ],
25
26
  "scripts": {
26
27
  "build": "tsc",