strand-ui 0.4.0 → 0.5.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 ADDED
@@ -0,0 +1,33 @@
1
+ # strand-ui
2
+
3
+ CLI for the [Strand](https://github.com/dillingerstaffing/strand) design language. Auto-detects your framework. Sets up tokens, CSS, and AI agent support.
4
+
5
+ ## Quick Start
6
+
7
+ ```bash
8
+ npx strand-ui init
9
+ ```
10
+
11
+ Detects Preact/React, Vue, Svelte, or CSS-only. Creates `STRAND.md` (AI agent instruction file), copies design tokens, generates config.
12
+
13
+ ## Commands
14
+
15
+ ```bash
16
+ strand init # Set up Strand in your project
17
+ strand add button # Copy a component into your codebase
18
+ strand list # List all 32 components
19
+ ```
20
+
21
+ ## Packages
22
+
23
+ - **[@dillingerstaffing/strand](https://www.npmjs.com/package/@dillingerstaffing/strand)** -- Design tokens
24
+ - **[@dillingerstaffing/strand-ui](https://www.npmjs.com/package/@dillingerstaffing/strand-ui)** -- Preact/React components
25
+ - **[@dillingerstaffing/strand-vue](https://www.npmjs.com/package/@dillingerstaffing/strand-vue)** -- Vue 3 components
26
+ - **[@dillingerstaffing/strand-svelte](https://www.npmjs.com/package/@dillingerstaffing/strand-svelte)** -- Svelte components
27
+
28
+ ## Links
29
+
30
+ - [GitHub](https://github.com/dillingerstaffing/strand)
31
+ - [Documentation](https://dillingerstaffing.com/labs/strand)
32
+
33
+ Created by [Dillinger Staffing](https://dillingerstaffing.com)
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAgCA,wBAAsB,GAAG,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoF9D"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AA6CA,wBAAsB,GAAG,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiG9D"}
@@ -10,10 +10,20 @@ function loadConfig() {
10
10
  }
11
11
  return JSON.parse(fs.readFileSync(configPath, "utf-8"));
12
12
  }
13
- function resolveStrandUiPath() {
13
+ const PACKAGE_FOR_FRAMEWORK = {
14
+ preact: "@dillingerstaffing/strand-ui",
15
+ vue: "@dillingerstaffing/strand-vue",
16
+ svelte: "@dillingerstaffing/strand-svelte",
17
+ "css-only": "@dillingerstaffing/strand-ui",
18
+ };
19
+ function resolvePackagePath(packageName) {
14
20
  let dir = process.cwd();
15
21
  while (dir !== path.dirname(dir)) {
16
- const candidate = path.join(dir, "node_modules", "@dillingerstaffing", "strand-ui");
22
+ // Handle scoped packages
23
+ const parts = packageName.startsWith("@")
24
+ ? packageName.split("/")
25
+ : [packageName];
26
+ const candidate = path.join(dir, "node_modules", ...parts);
17
27
  if (fs.existsSync(candidate)) {
18
28
  return candidate;
19
29
  }
@@ -39,23 +49,34 @@ export async function add(componentName) {
39
49
  console.error("No strand.config.json found. Run `strand init` first.");
40
50
  process.exit(1);
41
51
  }
42
- const strandUiPath = resolveStrandUiPath();
43
- if (!strandUiPath) {
44
- console.error("@dillingerstaffing/strand-ui is not installed.");
52
+ const framework = config.framework || "preact";
53
+ const packageName = PACKAGE_FOR_FRAMEWORK[framework];
54
+ const files = entry.files[framework];
55
+ const packagePath = resolvePackagePath(packageName);
56
+ if (!packagePath) {
57
+ console.error(`${packageName} is not installed.`);
45
58
  console.error("Install it first:\n");
46
- console.error(" npm install @dillingerstaffing/strand-ui");
59
+ console.error(` npm install ${packageName}`);
47
60
  process.exit(1);
48
61
  }
49
- const sourceDir = path.join(strandUiPath, "src", "components", entry.name);
62
+ const sourceDir = path.join(packagePath, "src", "components", entry.name);
50
63
  const targetDir = path.resolve(process.cwd(), config.componentDir, entry.name);
51
- if (!fs.existsSync(sourceDir)) {
64
+ if (!fs.existsSync(sourceDir) && framework !== "css-only") {
52
65
  console.error(`Component source not found at ${sourceDir}`);
53
- console.error("Make sure @dillingerstaffing/strand-ui includes source files.");
66
+ console.error(`Make sure ${packageName} includes source files.`);
54
67
  process.exit(1);
55
68
  }
56
69
  fs.mkdirSync(targetDir, { recursive: true });
57
- for (const file of entry.files) {
58
- const src = path.join(sourceDir, file);
70
+ for (const file of files) {
71
+ // For CSS-only, source CSS from strand-ui (the CSS is shared)
72
+ const srcPackage = file.endsWith(".css")
73
+ ? resolvePackagePath("@dillingerstaffing/strand-ui")
74
+ : packagePath;
75
+ if (!srcPackage) {
76
+ console.log(` Warning: source package not found for ${file}, skipping`);
77
+ continue;
78
+ }
79
+ const src = path.join(srcPackage, "src", "components", entry.name, file);
59
80
  const dest = path.join(targetDir, file);
60
81
  if (!fs.existsSync(src)) {
61
82
  console.log(` Warning: ${file} not found in source, skipping`);
@@ -65,12 +86,17 @@ export async function add(componentName) {
65
86
  fs.writeFileSync(dest, FILE_HEADER + content);
66
87
  console.log(` ${file} -> ${dest}`);
67
88
  }
68
- console.log(`\n${entry.name} added to ${targetDir}`);
89
+ console.log(`\n${entry.name} added to ${targetDir} (${framework})`);
90
+ if (framework === "css-only") {
91
+ console.log("\nSee HTML_REFERENCE.md for the HTML structure to use with this CSS.");
92
+ }
69
93
  // Warn if project doesn't appear to use TypeScript
70
- const hasTsConfig = fs.existsSync(path.join(process.cwd(), "tsconfig.json"));
71
- if (!hasTsConfig) {
72
- console.log("\nNote: Strand UI components are TypeScript (.tsx). If your project");
73
- console.log("uses JavaScript, rename .tsx files to .jsx and remove type annotations.");
94
+ if (framework !== "css-only") {
95
+ const hasTsConfig = fs.existsSync(path.join(process.cwd(), "tsconfig.json"));
96
+ if (!hasTsConfig && framework === "preact") {
97
+ console.log("\nNote: Components are TypeScript (.tsx). For JavaScript projects,");
98
+ console.log("rename .tsx to .jsx and remove type annotations.");
99
+ }
74
100
  }
75
101
  }
76
102
  //# sourceMappingURL=add.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,GAAG,oBAAoB,CAAC;AACzC,MAAM,WAAW,GAAG,yDAAyD,CAAC;AAE9E,SAAS,UAAU;IACjB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxB,OAAO,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,GAAG,EACH,cAAc,EACd,oBAAoB,EACpB,WAAW,CACZ,CAAC;QACF,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,aAAqB;IAC7C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,aAAa,GAAG,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CACX,uDAAuD,CACxD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,YAAY,GAAG,mBAAmB,EAAE,CAAC;IAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CACX,gDAAgD,CACjD,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,KAAK,CAAC,IAAI,CACX,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAC5B,OAAO,CAAC,GAAG,EAAE,EACb,MAAM,CAAC,YAAY,EACnB,KAAK,CAAC,IAAI,CACX,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CACX,iCAAiC,SAAS,EAAE,CAC7C,CAAC;QACF,OAAO,CAAC,KAAK,CACX,+DAA+D,CAChE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAExC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,gCAAgC,CAAC,CAAC;YAChE,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9C,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,aAAa,SAAS,EAAE,CAAC,CAAC;IAErD,mDAAmD;IACnD,MAAM,WAAW,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7E,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CACT,qEAAqE,CACtE,CAAC;QACF,OAAO,CAAC,GAAG,CACT,yEAAyE,CAC1E,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,6 @@
1
+ export type Framework = "preact" | "vue" | "svelte" | "css-only";
2
+ declare function detectFramework(): Framework;
3
+ declare function strandMdContent(framework: Framework): string;
1
4
  export declare function init(): Promise<void>;
5
+ export { detectFramework, strandMdContent };
2
6
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAkGA,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA2B1C"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE,iBAAS,eAAe,IAAI,SAAS,CAepC;AAwED,iBAAS,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAqCrD;AAqBD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA+B1C;AAGD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC"}
@@ -1,6 +1,25 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
3
  const CONFIG_FILE = "strand.config.json";
4
+ function detectFramework() {
5
+ const pkgPath = path.join(process.cwd(), "package.json");
6
+ if (!fs.existsSync(pkgPath))
7
+ return "css-only";
8
+ try {
9
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, "utf-8"));
10
+ const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
11
+ if (allDeps.vue)
12
+ return "vue";
13
+ if (allDeps.svelte)
14
+ return "svelte";
15
+ if (allDeps.preact || allDeps.react)
16
+ return "preact";
17
+ }
18
+ catch {
19
+ // Corrupt package.json, fall through
20
+ }
21
+ return "css-only";
22
+ }
4
23
  const DEFAULT_CONFIG = {
5
24
  cssDir: "./src/styles",
6
25
  componentDir: "./src/components",
@@ -12,7 +31,6 @@ function resolvePackagePath(packageName) {
12
31
  const filePath = resolved.startsWith("file://")
13
32
  ? new URL(resolved).pathname
14
33
  : resolved;
15
- // Walk up from the resolved entry point to find the package root
16
34
  let dir = path.dirname(filePath);
17
35
  while (dir !== path.dirname(dir)) {
18
36
  if (fs.existsSync(path.join(dir, "package.json"))) {
@@ -25,7 +43,6 @@ function resolvePackagePath(packageName) {
25
43
  catch {
26
44
  // Fall through to manual resolution
27
45
  }
28
- // Manual resolution: walk up from cwd looking for node_modules
29
46
  let dir = process.cwd();
30
47
  while (dir !== path.dirname(dir)) {
31
48
  const candidate = path.join(dir, "node_modules", packageName);
@@ -61,7 +78,8 @@ function copyCssFiles(cssDir) {
61
78
  }
62
79
  return true;
63
80
  }
64
- const STRAND_MD = `# STRAND.md
81
+ function strandMdContent(framework) {
82
+ const base = `# STRAND.md
65
83
 
66
84
  This project uses the Strand design language.
67
85
 
@@ -69,24 +87,56 @@ When building or modifying UI, read these files:
69
87
  - node_modules/@dillingerstaffing/strand-ui/HTML_REFERENCE.md (component classes and HTML structure)
70
88
  - https://github.com/dillingerstaffing/strand/blob/main/DESIGN_LANGUAGE.md (design constraints, token roles, interaction patterns, principles)
71
89
  `;
72
- function writeStrandMd() {
90
+ const bulmaNote = "Using Bulma? Load @dillingerstaffing/strand/bulma/strand-bulma-compat.css for visual cohesion.";
91
+ if (framework === "vue") {
92
+ return `${base}
93
+ Framework: Vue 3. Import components from @dillingerstaffing/strand-vue.
94
+ ${bulmaNote}
95
+ `;
96
+ }
97
+ if (framework === "svelte") {
98
+ return `${base}
99
+ Framework: Svelte. Import components from @dillingerstaffing/strand-svelte.
100
+ ${bulmaNote}
101
+ `;
102
+ }
103
+ if (framework === "css-only") {
104
+ return `${base}
105
+ Framework: CSS only. Use Strand CSS classes directly per HTML_REFERENCE.md.
106
+ ${bulmaNote}
107
+ `;
108
+ }
109
+ return `${base}
110
+ ${bulmaNote}
111
+ `;
112
+ }
113
+ function writeStrandMd(framework) {
73
114
  const strandMdPath = path.join(process.cwd(), "STRAND.md");
74
115
  if (fs.existsSync(strandMdPath)) {
75
116
  console.log("STRAND.md already exists. Skipping.");
76
117
  return;
77
118
  }
78
- fs.writeFileSync(strandMdPath, STRAND_MD);
119
+ fs.writeFileSync(strandMdPath, strandMdContent(framework));
79
120
  console.log("Created STRAND.md -- your AI coding agent reads this automatically.");
80
121
  }
122
+ const FRAMEWORK_LABELS = {
123
+ preact: "Preact/React",
124
+ vue: "Vue 3",
125
+ svelte: "Svelte",
126
+ "css-only": "CSS only",
127
+ };
81
128
  export async function init() {
82
129
  console.log("Strand by Dillinger Staffing -- dillingerstaffing.com\n");
83
- writeStrandMd();
130
+ const framework = detectFramework();
131
+ console.log(`Detected framework: ${FRAMEWORK_LABELS[framework]}`);
132
+ writeStrandMd(framework);
84
133
  const configPath = path.join(process.cwd(), CONFIG_FILE);
85
134
  if (fs.existsSync(configPath)) {
86
135
  console.log(`${CONFIG_FILE} already exists. Skipping.`);
87
136
  }
88
137
  else {
89
- fs.writeFileSync(configPath, JSON.stringify(DEFAULT_CONFIG, null, 2) + "\n");
138
+ const config = { ...DEFAULT_CONFIG, framework };
139
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n");
90
140
  console.log(`Created ${CONFIG_FILE}`);
91
141
  }
92
142
  const config = JSON.parse(fs.readFileSync(configPath, "utf-8"));
@@ -100,4 +150,6 @@ export async function init() {
100
150
  }
101
151
  console.log("\nReady. Your AI coding agent reads STRAND.md automatically.");
102
152
  }
153
+ // Exported for testing
154
+ export { detectFramework, strandMdContent };
103
155
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAIzC,SAAS,eAAe;IACtB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,UAAU,CAAC;IAE/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;QAChE,IAAI,OAAO,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC;QACpC,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK;YAAE,OAAO,QAAQ,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,cAAc,GAAG;IACrB,MAAM,EAAE,cAAc;IACtB,YAAY,EAAE,kBAAkB;CACjC,CAAC;AAEF,SAAS,kBAAkB,CAAC,WAAmB;IAC7C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC7C,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ;gBAC5B,CAAC,CAAC,QAAQ,CAAC;YACb,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,OAAO,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;oBAClD,OAAO,GAAG,CAAC;gBACb,CAAC;gBACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;IAED,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxB,OAAO,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAClC,MAAM,WAAW,GAAG,kBAAkB,CAAC,2BAA2B,CAAC,CAAC;IAEpE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAEtD,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,yCAAyC,CAAC,CAAC;YACzE,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,yDAAyD,CAAC;QACzE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,SAAoB;IAC3C,MAAM,IAAI,GAAG;;;;;;;CAOd,CAAC;IAEA,MAAM,SAAS,GACb,gGAAgG,CAAC;IAEnG,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,GAAG,IAAI;;EAEhB,SAAS;CACV,CAAC;IACA,CAAC;IAED,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,GAAG,IAAI;;EAEhB,SAAS;CACV,CAAC;IACA,CAAC;IAED,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC7B,OAAO,GAAG,IAAI;;EAEhB,SAAS;CACV,CAAC;IACA,CAAC;IAED,OAAO,GAAG,IAAI;EACd,SAAS;CACV,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CAAC,SAAoB;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAE3D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,gBAAgB,GAA8B;IAClD,MAAM,EAAE,cAAc;IACtB,GAAG,EAAE,OAAO;IACZ,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,UAAU;CACvB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;IAEvE,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,uBAAuB,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAElE,aAAa,CAAC,SAAS,CAAC,CAAC;IAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAEzD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,4BAA4B,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,SAAS,EAAE,CAAC;QAChD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,WAAW,WAAW,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEpC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,aAAa,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;AAC9E,CAAC;AAED,uBAAuB;AACvB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC"}
@@ -1,8 +1,9 @@
1
+ import type { Framework } from "./commands/init.js";
1
2
  export type ComponentCategory = "Input" | "Display" | "Layout" | "Navigation" | "Feedback";
2
3
  export interface ComponentEntry {
3
4
  name: string;
4
5
  category: ComponentCategory;
5
- files: string[];
6
+ files: Record<Framework, string[]>;
6
7
  }
7
8
  export declare const components: Map<string, ComponentEntry>;
8
9
  export declare const VALID_CATEGORIES: ComponentCategory[];
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GACzB,OAAO,GACP,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,UAAU,CAAC;AAEf,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAkQjD,CAAC;AAEH,eAAO,MAAM,gBAAgB,EAAE,iBAAiB,EAM/C,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,MAAM,iBAAiB,GACzB,OAAO,GACP,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,UAAU,CAAC;AAEf,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;CACpC;AAkBD,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CA0CjD,CAAC;AAEH,eAAO,MAAM,gBAAgB,EAAE,iBAAiB,EAM/C,CAAC"}
package/dist/registry.js CHANGED
@@ -1,257 +1,53 @@
1
+ function entry(name, category) {
2
+ return {
3
+ name,
4
+ category,
5
+ files: {
6
+ preact: [`${name}.tsx`, `${name}.css`, "index.ts"],
7
+ vue: [`${name}.vue`, `${name}.css`, "index.ts"],
8
+ svelte: [`${name}.svelte`, `${name}.css`, "index.ts"],
9
+ "css-only": [`${name}.css`],
10
+ },
11
+ };
12
+ }
1
13
  export const components = new Map([
2
14
  // Input
3
- [
4
- "button",
5
- {
6
- name: "Button",
7
- category: "Input",
8
- files: ["Button.tsx", "Button.css", "index.ts"],
9
- },
10
- ],
11
- [
12
- "input",
13
- {
14
- name: "Input",
15
- category: "Input",
16
- files: ["Input.tsx", "Input.css", "index.ts"],
17
- },
18
- ],
19
- [
20
- "textarea",
21
- {
22
- name: "Textarea",
23
- category: "Input",
24
- files: ["Textarea.tsx", "Textarea.css", "index.ts"],
25
- },
26
- ],
27
- [
28
- "select",
29
- {
30
- name: "Select",
31
- category: "Input",
32
- files: ["Select.tsx", "Select.css", "index.ts"],
33
- },
34
- ],
35
- [
36
- "checkbox",
37
- {
38
- name: "Checkbox",
39
- category: "Input",
40
- files: ["Checkbox.tsx", "Checkbox.css", "index.ts"],
41
- },
42
- ],
43
- [
44
- "radio",
45
- {
46
- name: "Radio",
47
- category: "Input",
48
- files: ["Radio.tsx", "Radio.css", "index.ts"],
49
- },
50
- ],
51
- [
52
- "switch",
53
- {
54
- name: "Switch",
55
- category: "Input",
56
- files: ["Switch.tsx", "Switch.css", "index.ts"],
57
- },
58
- ],
59
- [
60
- "slider",
61
- {
62
- name: "Slider",
63
- category: "Input",
64
- files: ["Slider.tsx", "Slider.css", "index.ts"],
65
- },
66
- ],
67
- [
68
- "formfield",
69
- {
70
- name: "FormField",
71
- category: "Input",
72
- files: ["FormField.tsx", "FormField.css", "index.ts"],
73
- },
74
- ],
15
+ ["button", entry("Button", "Input")],
16
+ ["input", entry("Input", "Input")],
17
+ ["textarea", entry("Textarea", "Input")],
18
+ ["select", entry("Select", "Input")],
19
+ ["checkbox", entry("Checkbox", "Input")],
20
+ ["radio", entry("Radio", "Input")],
21
+ ["switch", entry("Switch", "Input")],
22
+ ["slider", entry("Slider", "Input")],
23
+ ["formfield", entry("FormField", "Input")],
75
24
  // Display
76
- [
77
- "card",
78
- {
79
- name: "Card",
80
- category: "Display",
81
- files: ["Card.tsx", "Card.css", "index.ts"],
82
- },
83
- ],
84
- [
85
- "badge",
86
- {
87
- name: "Badge",
88
- category: "Display",
89
- files: ["Badge.tsx", "Badge.css", "index.ts"],
90
- },
91
- ],
92
- [
93
- "avatar",
94
- {
95
- name: "Avatar",
96
- category: "Display",
97
- files: ["Avatar.tsx", "Avatar.css", "index.ts"],
98
- },
99
- ],
100
- [
101
- "tag",
102
- {
103
- name: "Tag",
104
- category: "Display",
105
- files: ["Tag.tsx", "Tag.css", "index.ts"],
106
- },
107
- ],
108
- [
109
- "table",
110
- {
111
- name: "Table",
112
- category: "Display",
113
- files: ["Table.tsx", "Table.css", "index.ts"],
114
- },
115
- ],
116
- [
117
- "datareadout",
118
- {
119
- name: "DataReadout",
120
- category: "Display",
121
- files: ["DataReadout.tsx", "DataReadout.css", "index.ts"],
122
- },
123
- ],
25
+ ["card", entry("Card", "Display")],
26
+ ["badge", entry("Badge", "Display")],
27
+ ["avatar", entry("Avatar", "Display")],
28
+ ["tag", entry("Tag", "Display")],
29
+ ["table", entry("Table", "Display")],
30
+ ["datareadout", entry("DataReadout", "Display")],
31
+ ["codeblock", entry("CodeBlock", "Display")],
124
32
  // Layout
125
- [
126
- "stack",
127
- {
128
- name: "Stack",
129
- category: "Layout",
130
- files: ["Stack.tsx", "Stack.css", "index.ts"],
131
- },
132
- ],
133
- [
134
- "grid",
135
- {
136
- name: "Grid",
137
- category: "Layout",
138
- files: ["Grid.tsx", "Grid.css", "index.ts"],
139
- },
140
- ],
141
- [
142
- "container",
143
- {
144
- name: "Container",
145
- category: "Layout",
146
- files: ["Container.tsx", "Container.css", "index.ts"],
147
- },
148
- ],
149
- [
150
- "divider",
151
- {
152
- name: "Divider",
153
- category: "Layout",
154
- files: ["Divider.tsx", "Divider.css", "index.ts"],
155
- },
156
- ],
157
- [
158
- "section",
159
- {
160
- name: "Section",
161
- category: "Layout",
162
- files: ["Section.tsx", "Section.css", "index.ts"],
163
- },
164
- ],
33
+ ["stack", entry("Stack", "Layout")],
34
+ ["grid", entry("Grid", "Layout")],
35
+ ["container", entry("Container", "Layout")],
36
+ ["divider", entry("Divider", "Layout")],
37
+ ["section", entry("Section", "Layout")],
165
38
  // Navigation
166
- [
167
- "link",
168
- {
169
- name: "Link",
170
- category: "Navigation",
171
- files: ["Link.tsx", "Link.css", "index.ts"],
172
- },
173
- ],
174
- [
175
- "tabs",
176
- {
177
- name: "Tabs",
178
- category: "Navigation",
179
- files: ["Tabs.tsx", "Tabs.css", "index.ts"],
180
- },
181
- ],
182
- [
183
- "breadcrumb",
184
- {
185
- name: "Breadcrumb",
186
- category: "Navigation",
187
- files: ["Breadcrumb.tsx", "Breadcrumb.css", "index.ts"],
188
- },
189
- ],
190
- [
191
- "nav",
192
- {
193
- name: "Nav",
194
- category: "Navigation",
195
- files: ["Nav.tsx", "Nav.css", "index.ts"],
196
- },
197
- ],
39
+ ["link", entry("Link", "Navigation")],
40
+ ["tabs", entry("Tabs", "Navigation")],
41
+ ["breadcrumb", entry("Breadcrumb", "Navigation")],
42
+ ["nav", entry("Nav", "Navigation")],
198
43
  // Feedback
199
- [
200
- "toast",
201
- {
202
- name: "Toast",
203
- category: "Feedback",
204
- files: ["Toast.tsx", "Toast.css", "index.ts"],
205
- },
206
- ],
207
- [
208
- "alert",
209
- {
210
- name: "Alert",
211
- category: "Feedback",
212
- files: ["Alert.tsx", "Alert.css", "index.ts"],
213
- },
214
- ],
215
- [
216
- "dialog",
217
- {
218
- name: "Dialog",
219
- category: "Feedback",
220
- files: ["Dialog.tsx", "Dialog.css", "index.ts"],
221
- },
222
- ],
223
- [
224
- "tooltip",
225
- {
226
- name: "Tooltip",
227
- category: "Feedback",
228
- files: ["Tooltip.tsx", "Tooltip.css", "index.ts"],
229
- },
230
- ],
231
- [
232
- "progress",
233
- {
234
- name: "Progress",
235
- category: "Feedback",
236
- files: ["Progress.tsx", "Progress.css", "index.ts"],
237
- },
238
- ],
239
- [
240
- "spinner",
241
- {
242
- name: "Spinner",
243
- category: "Feedback",
244
- files: ["Spinner.tsx", "Spinner.css", "index.ts"],
245
- },
246
- ],
247
- [
248
- "skeleton",
249
- {
250
- name: "Skeleton",
251
- category: "Feedback",
252
- files: ["Skeleton.tsx", "Skeleton.css", "index.ts"],
253
- },
254
- ],
44
+ ["toast", entry("Toast", "Feedback")],
45
+ ["alert", entry("Alert", "Feedback")],
46
+ ["dialog", entry("Dialog", "Feedback")],
47
+ ["tooltip", entry("Tooltip", "Feedback")],
48
+ ["progress", entry("Progress", "Feedback")],
49
+ ["spinner", entry("Spinner", "Feedback")],
50
+ ["skeleton", entry("Skeleton", "Feedback")],
255
51
  ]);
256
52
  export const VALID_CATEGORIES = [
257
53
  "Input",
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "strand-ui",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "description": "CLI for adding Strand UI components to your project",
5
5
  "author": "Dillinger Staffing <engineering@dillingerstaffing.com> (https://dillingerstaffing.com)",
6
6
  "license": "MIT",