@shift-css/cli 0.0.1 → 0.1.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/dist/index.js +54 -2
- package/dist/index.js.map +3 -3
- package/package.json +10 -5
package/dist/index.js
CHANGED
|
@@ -2,6 +2,58 @@
|
|
|
2
2
|
|
|
3
3
|
// src/index.ts
|
|
4
4
|
import pc4 from "picocolors";
|
|
5
|
+
// package.json
|
|
6
|
+
var package_default = {
|
|
7
|
+
name: "@shift-css/cli",
|
|
8
|
+
version: "0.1.0",
|
|
9
|
+
description: "CLI tool for Shift CSS framework setup and migration",
|
|
10
|
+
type: "module",
|
|
11
|
+
bin: {
|
|
12
|
+
"shift-css": "./dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
exports: {
|
|
15
|
+
".": "./dist/index.js"
|
|
16
|
+
},
|
|
17
|
+
files: [
|
|
18
|
+
"dist"
|
|
19
|
+
],
|
|
20
|
+
scripts: {
|
|
21
|
+
build: "bun run scripts/build.ts",
|
|
22
|
+
dev: "bun run src/index.ts",
|
|
23
|
+
test: "bun test"
|
|
24
|
+
},
|
|
25
|
+
dependencies: {
|
|
26
|
+
"@clack/prompts": "^0.7.0",
|
|
27
|
+
picocolors: "^1.0.0"
|
|
28
|
+
},
|
|
29
|
+
devDependencies: {
|
|
30
|
+
"@types/bun": "^1.1.14",
|
|
31
|
+
"@types/node": "^22.10.5",
|
|
32
|
+
tsx: "^4.19.2",
|
|
33
|
+
typescript: "^5.7.3"
|
|
34
|
+
},
|
|
35
|
+
engines: {
|
|
36
|
+
node: ">=20.0.0"
|
|
37
|
+
},
|
|
38
|
+
keywords: [
|
|
39
|
+
"css",
|
|
40
|
+
"cli",
|
|
41
|
+
"shift-css",
|
|
42
|
+
"init",
|
|
43
|
+
"cascade-layers",
|
|
44
|
+
"oklch"
|
|
45
|
+
],
|
|
46
|
+
license: "MIT",
|
|
47
|
+
repository: {
|
|
48
|
+
type: "git",
|
|
49
|
+
url: "git+https://github.com/auswm85/shift-css.git",
|
|
50
|
+
directory: "packages/cli"
|
|
51
|
+
},
|
|
52
|
+
bugs: {
|
|
53
|
+
url: "https://github.com/auswm85/shift-css/issues"
|
|
54
|
+
},
|
|
55
|
+
homepage: "https://github.com/auswm85/shift-css#readme"
|
|
56
|
+
};
|
|
5
57
|
|
|
6
58
|
// src/commands/init.ts
|
|
7
59
|
import pc3 from "picocolors";
|
|
@@ -653,7 +705,7 @@ async function initCommand() {
|
|
|
653
705
|
}
|
|
654
706
|
|
|
655
707
|
// src/index.ts
|
|
656
|
-
var VERSION =
|
|
708
|
+
var VERSION = package_default.version;
|
|
657
709
|
function showHelp() {
|
|
658
710
|
console.log(`
|
|
659
711
|
${pc4.bold("Shift CSS CLI")} ${pc4.dim(`v${VERSION}`)}
|
|
@@ -706,4 +758,4 @@ main().catch((error) => {
|
|
|
706
758
|
process.exit(1);
|
|
707
759
|
});
|
|
708
760
|
|
|
709
|
-
//# debugId=
|
|
761
|
+
//# debugId=4E2DFF2C0B8DBAC564756E2164756E21
|
package/dist/index.js.map
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts", "../src/commands/init.ts", "../src/core/detector.ts", "../src/core/generator.ts", "../src/types.ts", "../src/core/scanner.ts", "../src/ui/display.ts", "../src/ui/prompts.ts", "../src/core/color.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"#!/usr/bin/env node\n/**\n * Shift CSS CLI\n *\n * A \"Guided Hand\" CLI tool that helps set up CSS layer compatibility\n *\n * Usage:\n * npx shift-css init - Initialize Shift CSS in your project\n * npx shift-css --help - Show help\n */\n\nimport pc from 'picocolors';\nimport { initCommand } from './commands/init.ts';\n\nconst VERSION =
|
|
5
|
+
"#!/usr/bin/env node\n/**\n * Shift CSS CLI\n *\n * A \"Guided Hand\" CLI tool that helps set up CSS layer compatibility\n *\n * Usage:\n * npx shift-css init - Initialize Shift CSS in your project\n * npx shift-css --help - Show help\n */\n\nimport pc from 'picocolors';\nimport pkg from '../package.json' with { type: 'json' };\nimport { initCommand } from './commands/init.ts';\n\nconst VERSION = pkg.version;\n\nfunction showHelp(): void {\n\tconsole.log(`\n${pc.bold('Shift CSS CLI')} ${pc.dim(`v${VERSION}`)}\n\n${pc.dim('Usage:')}\n ${pc.cyan('shift-css')} ${pc.green('<command>')} ${pc.dim('[options]')}\n\n${pc.dim('Commands:')}\n ${pc.green('init')} Set up Shift CSS in your project\n Detects existing frameworks and wraps them in @layer legacy\n\n${pc.dim('Options:')}\n ${pc.yellow('--help, -h')} Show this help message\n ${pc.yellow('--version, -v')} Show version number\n\n${pc.dim('Examples:')}\n ${pc.cyan('npx shift-css init')}\n ${pc.cyan('npx shift-css --help')}\n\n${pc.dim('Learn more:')} ${pc.underline('https://getshiftcss.com')}\n`);\n}\n\nfunction showVersion(): void {\n\tconsole.log(`shift-css v${VERSION}`);\n}\n\nasync function main(): Promise<void> {\n\tconst args = process.argv.slice(2);\n\tconst command = args[0];\n\n\t// Handle flags\n\tif (command === '--help' || command === '-h') {\n\t\tshowHelp();\n\t\treturn;\n\t}\n\n\tif (command === '--version' || command === '-v') {\n\t\tshowVersion();\n\t\treturn;\n\t}\n\n\t// Handle commands\n\tif (command === 'init' || !command) {\n\t\tawait initCommand();\n\t\treturn;\n\t}\n\n\t// Unknown command\n\tconsole.error(pc.red(`Unknown command: ${command}`));\n\tconsole.log(pc.dim(`Run ${pc.cyan('shift-css --help')} for usage information.`));\n\tprocess.exit(1);\n}\n\nmain().catch((error: Error) => {\n\tconsole.error(pc.red('Error:'), error.message);\n\tif (process.env.DEBUG) {\n\t\tconsole.error(error.stack);\n\t}\n\tprocess.exit(1);\n});\n",
|
|
6
6
|
"/**\n * Init Command\n * Initialize Shift CSS in a project\n */\n\nimport pc from 'picocolors';\nimport { detectFrameworks } from '../core/detector.ts';\nimport {\n\tconfigExists,\n\tgenerateConfig,\n\tgenerateStylesheet,\n\tstylesheetExists,\n\twriteConfig,\n\twriteStylesheet,\n} from '../core/generator.ts';\nimport { scanForCssFiles } from '../core/scanner.ts';\nimport { DEFAULT_CONFIG, type InitResult } from '../types.ts';\nimport { showNextSteps, showStylesheetPreview } from '../ui/display.ts';\nimport {\n\taskArchitectureMode,\n\taskPrimaryHue,\n\taskStylesheetPath,\n\tconfirmInit,\n\tconfirmOverwrite,\n\tcreateSpinner,\n\tlogSuccess,\n\tlogWarning,\n\tshowIntro,\n\tshowOutro,\n} from '../ui/prompts.ts';\n\n/**\n * Main init command\n */\nexport async function initCommand(): Promise<void> {\n\tconst rootDir = process.cwd();\n\n\tshowIntro();\n\n\t// Check if already initialized\n\tconst hasConfig = await configExists(rootDir);\n\tif (hasConfig) {\n\t\tlogWarning('This project already has a shift.config.json');\n\t\tconst shouldOverwrite = await confirmOverwrite('shift.config.json');\n\t\tif (!shouldOverwrite) {\n\t\t\tshowOutro(pc.yellow('Initialization cancelled'));\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// Step 1: Scan for existing CSS frameworks (silent, for detection)\n\tconst spinner = createSpinner();\n\tspinner.start('Scanning project...');\n\n\tconst cssFiles = await scanForCssFiles(rootDir);\n\tconst detectedFrameworks = await detectFrameworks(cssFiles);\n\n\tif (detectedFrameworks.length > 0) {\n\t\tspinner.stop(`Detected existing CSS: ${detectedFrameworks.map((f) => f.type).join(', ')}`);\n\t} else {\n\t\tspinner.stop('Project scanned');\n\t}\n\n\t// Step 2: Ask for architecture mode\n\tconst mode = await askArchitectureMode(detectedFrameworks);\n\n\t// Step 3: Ask for primary hue\n\tconst primaryHue = await askPrimaryHue();\n\n\t// Step 4: Ask for stylesheet path\n\tconst defaultStylesheetPath = DEFAULT_CONFIG.paths.stylesheet;\n\tconst stylesheetPath = await askStylesheetPath(defaultStylesheetPath);\n\n\t// Check if stylesheet already exists\n\tconst hasStylesheet = await stylesheetExists(rootDir, stylesheetPath);\n\tif (hasStylesheet) {\n\t\tconst shouldOverwrite = await confirmOverwrite(stylesheetPath);\n\t\tif (!shouldOverwrite) {\n\t\t\tshowOutro(pc.yellow('Initialization cancelled'));\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// Step 5: Preview what will be created\n\tconst stylesheetContent = generateStylesheet(mode, detectedFrameworks);\n\tshowStylesheetPreview(stylesheetContent);\n\n\t// Step 6: Confirm and create files\n\tconst shouldProceed = await confirmInit('shift.config.json', stylesheetPath, mode);\n\n\tif (!shouldProceed) {\n\t\tshowOutro(pc.yellow('Initialization cancelled'));\n\t\treturn;\n\t}\n\n\t// Create config\n\tconst config = generateConfig({\n\t\tmode,\n\t\thues: {\n\t\t\tprimary: primaryHue,\n\t\t\tsecondary: DEFAULT_CONFIG.hues.secondary,\n\t\t\taccent: DEFAULT_CONFIG.hues.accent,\n\t\t\tneutral: primaryHue, // Match neutral to primary for cohesion\n\t\t},\n\t\tpaths: {\n\t\t\tstylesheet: stylesheetPath,\n\t\t},\n\t});\n\n\tspinner.start('Creating files...');\n\n\tconst configPath = await writeConfig(rootDir, config);\n\tconst fullStylesheetPath = await writeStylesheet(rootDir, stylesheetPath, stylesheetContent);\n\n\tspinner.stop('Files created');\n\n\t// Success!\n\tlogSuccess(`Created ${pc.cyan('shift.config.json')}`);\n\tlogSuccess(`Created ${pc.cyan(stylesheetPath)}`);\n\n\tconst result: InitResult = {\n\t\tconfigPath,\n\t\tstylesheetPath: fullStylesheetPath,\n\t\tmode,\n\t\tdetectedFrameworks: detectedFrameworks.length > 0 ? detectedFrameworks : undefined,\n\t};\n\n\t// Show next steps based on mode\n\tshowNextSteps(result);\n\n\tshowOutro(pc.green('✨ Shift CSS initialized!'));\n}\n",
|
|
7
7
|
"/**\n * Framework Detector\n * Identifies CSS frameworks by filename and content patterns\n */\n\nimport { readFile } from 'node:fs/promises';\nimport type { CssFile, DetectedFramework, FrameworkSignature, FrameworkType } from '../types.ts';\n\n/** Framework signatures for detection */\nexport const FRAMEWORK_SIGNATURES: FrameworkSignature[] = [\n\t{\n\t\tname: 'bootstrap',\n\t\tfilePatterns: [\n\t\t\t/bootstrap\\.css$/i,\n\t\t\t/bootstrap\\.min\\.css$/i,\n\t\t\t/bootstrap[\\d.-]+\\.css$/i,\n\t\t\t/bootstrap[\\d.-]+\\.min\\.css$/i,\n\t\t],\n\t\tcontentPatterns: [/\\.btn-primary\\s*\\{/, /\\.container-fluid\\s*\\{/, /\\.navbar-/, /--bs-/],\n\t\tpriority: 10,\n\t\ticon: '🅱️',\n\t\tdisplayName: 'Bootstrap',\n\t},\n\t{\n\t\tname: 'tailwind',\n\t\tfilePatterns: [\n\t\t\t/tailwind\\.css$/i,\n\t\t\t/tailwind\\.min\\.css$/i,\n\t\t\t/tailwind\\.output\\.css$/i,\n\t\t\t/tailwind-output\\.css$/i,\n\t\t],\n\t\tcontentPatterns: [\n\t\t\t/--tw-/,\n\t\t\t/\\.hover\\\\:/,\n\t\t\t/\\.focus\\\\:/,\n\t\t\t/@tailwind\\s+(base|components|utilities)/,\n\t\t\t/\\.-?m[trblxy]?-\\[/,\n\t\t],\n\t\tpriority: 10,\n\t\ticon: '🌊',\n\t\tdisplayName: 'Tailwind CSS',\n\t},\n\t{\n\t\tname: 'bulma',\n\t\tfilePatterns: [/bulma\\.css$/i, /bulma\\.min\\.css$/i],\n\t\tcontentPatterns: [/\\.is-primary\\s*\\{/, /\\.columns\\s*\\{/, /\\.navbar-burger/],\n\t\tpriority: 10,\n\t\ticon: '🎨',\n\t\tdisplayName: 'Bulma',\n\t},\n\t{\n\t\tname: 'foundation',\n\t\tfilePatterns: [/foundation\\.css$/i, /foundation\\.min\\.css$/i],\n\t\tcontentPatterns: [/\\.callout\\s*\\{/, /\\.top-bar\\s*\\{/, /\\.orbit/],\n\t\tpriority: 10,\n\t\ticon: '🏛️',\n\t\tdisplayName: 'Foundation',\n\t},\n\t{\n\t\tname: 'generic-large',\n\t\tfilePatterns: [],\n\t\tcontentPatterns: [],\n\t\tpriority: 1,\n\t\tminSize: 10 * 1024, // 10KB\n\t\ticon: '📄',\n\t\tdisplayName: 'Large CSS File',\n\t},\n];\n\n/**\n * Get framework signature by name\n */\nexport function getSignature(type: FrameworkType): FrameworkSignature | undefined {\n\treturn FRAMEWORK_SIGNATURES.find((s) => s.name === type);\n}\n\n/**\n * Check if filename matches any framework pattern\n */\nfunction matchFilename(\n\tbasename: string\n): { type: FrameworkType; signature: FrameworkSignature } | null {\n\tfor (const sig of FRAMEWORK_SIGNATURES) {\n\t\tif (sig.filePatterns.some((pattern) => pattern.test(basename))) {\n\t\t\treturn { type: sig.name, signature: sig };\n\t\t}\n\t}\n\treturn null;\n}\n\n/**\n * Check if content matches framework patterns\n */\nfunction matchContent(\n\tcontent: string\n): { type: FrameworkType; signature: FrameworkSignature } | null {\n\tfor (const sig of FRAMEWORK_SIGNATURES) {\n\t\tif (sig.contentPatterns.length === 0) continue;\n\t\tconst matches = sig.contentPatterns.filter((pattern) => pattern.test(content));\n\t\t// Require at least 2 content pattern matches for confidence\n\t\tif (matches.length >= 2) {\n\t\t\treturn { type: sig.name, signature: sig };\n\t\t}\n\t}\n\treturn null;\n}\n\n/**\n * Detect frameworks from a list of CSS files\n */\nexport async function detectFrameworks(files: CssFile[]): Promise<DetectedFramework[]> {\n\tconst detected: DetectedFramework[] = [];\n\tconst processedPaths = new Set<string>();\n\n\tfor (const file of files) {\n\t\tif (processedPaths.has(file.path)) continue;\n\n\t\t// Pass 1: Filename matching (fast, high confidence)\n\t\tconst filenameMatch = matchFilename(file.basename);\n\t\tif (filenameMatch) {\n\t\t\tdetected.push({\n\t\t\t\ttype: filenameMatch.type,\n\t\t\t\tfile,\n\t\t\t\tconfidence: 'high',\n\t\t\t\tmatchedBy: 'filename',\n\t\t\t});\n\t\t\tprocessedPaths.add(file.path);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Pass 2: Content analysis for larger files\n\t\tif (file.size > 5 * 1024) {\n\t\t\t// >5KB\n\t\t\ttry {\n\t\t\t\t// Read first 50KB for pattern matching\n\t\t\t\tconst content = await readFileHead(file.path, 50 * 1024);\n\n\t\t\t\tconst contentMatch = matchContent(content);\n\t\t\t\tif (contentMatch) {\n\t\t\t\t\tdetected.push({\n\t\t\t\t\t\ttype: contentMatch.type,\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tconfidence: 'medium',\n\t\t\t\t\t\tmatchedBy: 'content',\n\t\t\t\t\t});\n\t\t\t\t\tprocessedPaths.add(file.path);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\t// Skip files we can't read\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\t// Pass 3: Size-based detection for large generic files\n\t\tconst genericSig = FRAMEWORK_SIGNATURES.find((s) => s.name === 'generic-large');\n\t\tif (genericSig?.minSize && file.size > genericSig.minSize) {\n\t\t\t// Only flag as generic-large if it's a likely entry point name\n\t\t\tconst entryNames = ['app.css', 'main.css', 'styles.css', 'style.css', 'global.css'];\n\t\t\tif (entryNames.includes(file.basename.toLowerCase())) {\n\t\t\t\tdetected.push({\n\t\t\t\t\ttype: 'generic-large',\n\t\t\t\t\tfile,\n\t\t\t\t\tconfidence: 'low',\n\t\t\t\t\tmatchedBy: 'size',\n\t\t\t\t});\n\t\t\t\tprocessedPaths.add(file.path);\n\t\t\t}\n\t\t}\n\t}\n\n\t// Sort by file size descending\n\treturn detected.sort((a, b) => b.file.size - a.file.size);\n}\n\n/**\n * Read first N bytes of a file\n */\nasync function readFileHead(filepath: string, maxBytes: number): Promise<string> {\n\tconst content = await readFile(filepath, 'utf-8');\n\treturn content.slice(0, maxBytes);\n}\n\n/**\n * Check if a file already has @layer declarations\n */\nexport async function hasLayerDeclarations(filepath: string): Promise<boolean> {\n\ttry {\n\t\tconst content = await readFile(filepath, 'utf-8');\n\t\treturn /@layer\\s+/.test(content);\n\t} catch {\n\t\treturn false;\n\t}\n}\n",
|
|
8
8
|
"/**\n * Code Generator\n * Creates shift.config.json and scaffolds stylesheets\n */\n\nimport { mkdir, readFile, writeFile } from 'node:fs/promises';\nimport { dirname, join } from 'node:path';\nimport {\n\ttype ArchitectureMode,\n\tDEFAULT_CONFIG,\n\ttype DetectedFramework,\n\ttype ShiftConfig,\n} from '../types.ts';\n\n/** Shift CSS layer order */\nconst SHIFT_LAYERS = 'shift.tokens, shift.base, shift.components, shift.utilities';\n\n/**\n * Generate the layer order declaration based on architecture mode\n */\nexport function generateLayerOrder(mode: ArchitectureMode): string {\n\tif (mode === 'hybrid') {\n\t\treturn `@layer legacy, ${SHIFT_LAYERS};`;\n\t}\n\treturn `@layer ${SHIFT_LAYERS};`;\n}\n\n/**\n * Generate config file content\n */\nexport function generateConfig(options: Partial<ShiftConfig> = {}): ShiftConfig {\n\treturn {\n\t\t...DEFAULT_CONFIG,\n\t\t...options,\n\t\thues: {\n\t\t\t...DEFAULT_CONFIG.hues,\n\t\t\t...options.hues,\n\t\t},\n\t\tpaths: {\n\t\t\t...DEFAULT_CONFIG.paths,\n\t\t\t...options.paths,\n\t\t},\n\t};\n}\n\n/**\n * Generate stylesheet content based on architecture mode\n */\nexport function generateStylesheet(\n\tmode: ArchitectureMode,\n\tdetectedFrameworks: DetectedFramework[] = []\n): string {\n\tconst lines: string[] = [];\n\n\t// Header comment\n\tlines.push('/**');\n\tlines.push(' * Shift CSS Entry Point');\n\tlines.push(' * Initialized by shift-css init');\n\tlines.push(' *');\n\tif (mode === 'hybrid') {\n\t\tlines.push(' * Layer order (lowest → highest specificity):');\n\t\tlines.push(' * 1. legacy - Your existing frameworks');\n\t\tlines.push(' * 2. shift.tokens - Design tokens (colors, spacing, typography)');\n\t\tlines.push(' * 3. shift.base - Reset and base styles');\n\t\tlines.push(' * 4. shift.components - UI components');\n\t\tlines.push(' * 5. shift.utilities - Utility classes');\n\t\tlines.push(' * 6. (unlayered) - Your custom overrides (highest specificity)');\n\t} else {\n\t\tlines.push(' * Layer order (lowest → highest specificity):');\n\t\tlines.push(' * 1. shift.tokens - Design tokens (colors, spacing, typography)');\n\t\tlines.push(' * 2. shift.base - Reset and base styles');\n\t\tlines.push(' * 3. shift.components - UI components');\n\t\tlines.push(' * 4. shift.utilities - Utility classes');\n\t\tlines.push(' * 5. (unlayered) - Your custom overrides (highest specificity)');\n\t}\n\tlines.push(' */');\n\tlines.push('');\n\n\t// Layer order declaration\n\tlines.push(generateLayerOrder(mode));\n\tlines.push('');\n\n\t// Shift CSS imports\n\tlines.push('@import \"@shift-css/core/tokens\";');\n\tlines.push('@import \"@shift-css/core/base\";');\n\tlines.push('@import \"@shift-css/core/components\";');\n\tlines.push('@import \"@shift-css/core/utilities\";');\n\tlines.push('');\n\n\t// Legacy layer for hybrid mode\n\tif (mode === 'hybrid') {\n\t\tlines.push('/* Legacy framework imports - add your existing CSS here */');\n\t\tlines.push('@layer legacy {');\n\n\t\tif (detectedFrameworks.length > 0) {\n\t\t\tfor (const fw of detectedFrameworks) {\n\t\t\t\tlines.push(` /* @import \"${fw.file.relativePath}\"; */`);\n\t\t\t}\n\t\t} else {\n\t\t\tlines.push(' /* @import \"your-existing-framework.css\"; */');\n\t\t}\n\n\t\tlines.push('}');\n\t\tlines.push('');\n\t}\n\n\t// Custom styles section\n\tlines.push('/* Your custom styles below */');\n\tlines.push('');\n\n\treturn lines.join('\\n');\n}\n\n/**\n * Write config file to disk\n */\nexport async function writeConfig(rootDir: string, config: ShiftConfig): Promise<string> {\n\tconst configPath = join(rootDir, 'shift.config.json');\n\tconst content = JSON.stringify(config, null, '\\t');\n\tawait writeFile(configPath, `${content}\\n`, 'utf-8');\n\treturn configPath;\n}\n\n/**\n * Write stylesheet to disk\n */\nexport async function writeStylesheet(\n\trootDir: string,\n\trelativePath: string,\n\tcontent: string\n): Promise<string> {\n\tconst fullPath = join(rootDir, relativePath);\n\tconst dir = dirname(fullPath);\n\n\t// Create directory if it doesn't exist\n\tawait mkdir(dir, { recursive: true });\n\tawait writeFile(fullPath, content, 'utf-8');\n\n\treturn fullPath;\n}\n\n/**\n * Check if config file already exists\n */\nexport async function configExists(rootDir: string): Promise<boolean> {\n\ttry {\n\t\tawait readFile(join(rootDir, 'shift.config.json'), 'utf-8');\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\n/**\n * Read existing config file\n */\nexport async function readConfig(rootDir: string): Promise<ShiftConfig | null> {\n\ttry {\n\t\tconst content = await readFile(join(rootDir, 'shift.config.json'), 'utf-8');\n\t\treturn JSON.parse(content) as ShiftConfig;\n\t} catch {\n\t\treturn null;\n\t}\n}\n\n/**\n * Check if stylesheet already exists\n */\nexport async function stylesheetExists(rootDir: string, relativePath: string): Promise<boolean> {\n\ttry {\n\t\tawait readFile(join(rootDir, relativePath), 'utf-8');\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\n",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"/**\n * Interactive Prompts\n * User interaction using @clack/prompts\n */\n\nimport * as p from '@clack/prompts';\nimport pc from 'picocolors';\nimport { getColorName, hexToHue, isHexColor, PRESETS } from '../core/color.ts';\nimport type { ArchitectureMode, DetectedFramework } from '../types.ts';\n\n/**\n * Show intro banner\n */\nexport function showIntro(): void {\n\tconsole.clear();\n\tp.intro(pc.bgMagenta(pc.white(' 🎨 Shift CSS Init ')));\n}\n\n/**\n * Show outro message\n */\nexport function showOutro(message: string): void {\n\tp.outro(message);\n}\n\n/**\n * Show cancel message and exit\n */\nexport function handleCancel(): never {\n\tp.cancel('Setup cancelled');\n\tprocess.exit(0);\n}\n\n/**\n * Create a spinner for async operations\n */\nexport function createSpinner(): ReturnType<typeof p.spinner> {\n\treturn p.spinner();\n}\n\n/**\n * Show a note box\n */\nexport function showNote(message: string, title?: string): void {\n\tp.note(message, title);\n}\n\n/**\n * Ask for architecture mode\n */\nexport async function askArchitectureMode(\n\tdetectedFrameworks: DetectedFramework[]\n): Promise<ArchitectureMode> {\n\tconst hasFrameworks = detectedFrameworks.length > 0;\n\n\tconst frameworkHint = hasFrameworks\n\t\t? `Detected: ${detectedFrameworks.map((f) => f.type).join(', ')}`\n\t\t: undefined;\n\n\tconst mode = await p.select({\n\t\tmessage: 'What type of project is this?',\n\t\toptions: [\n\t\t\t{\n\t\t\t\tvalue: 'greenfield' as const,\n\t\t\t\tlabel: 'New project (Greenfield)',\n\t\t\t\thint: 'Pure Shift CSS, no legacy frameworks',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: 'hybrid' as const,\n\t\t\t\tlabel: 'Existing project (Hybrid)',\n\t\t\t\thint: frameworkHint ?? 'Shift CSS alongside existing CSS',\n\t\t\t},\n\t\t],\n\t\tinitialValue: hasFrameworks ? ('hybrid' as const) : ('greenfield' as const),\n\t});\n\n\tif (p.isCancel(mode)) handleCancel();\n\n\treturn mode as ArchitectureMode;\n}\n\n/**\n * Ask for primary seed hue with presets and hex input\n */\nexport async function askPrimaryHue(): Promise<number> {\n\t// Build options from presets + custom\n\tconst presetOptions = PRESETS.map((preset) => ({\n\t\tvalue: preset.hue,\n\t\tlabel: preset.name,\n\t\thint: preset.description,\n\t}));\n\n\tconst hue = await p.select({\n\t\tmessage: 'Choose your brand color:',\n\t\toptions: [\n\t\t\t...presetOptions,\n\t\t\t{ value: -1, label: 'Custom', hint: 'Enter hex code or hue value' },\n\t\t],\n\t});\n\n\tif (p.isCancel(hue)) handleCancel();\n\n\tif (hue === -1) {\n\t\t// Show cheat sheet\n\t\tp.log.info(pc.dim('Hue guide: 20=Red, 90=Yellow, 140=Green, 260=Blue, 320=Purple'));\n\n\t\tconst customValue = await p.text({\n\t\t\tmessage: 'Enter a hex code (#a855f7) or hue (0-360):',\n\t\t\tplaceholder: '#a855f7 or 260',\n\t\t\tvalidate: (value) => {\n\t\t\t\tconst trimmed = value.trim();\n\n\t\t\t\t// Check if hex color\n\t\t\t\tif (isHexColor(trimmed)) {\n\t\t\t\t\tconst parsedHue = hexToHue(trimmed);\n\t\t\t\t\tif (parsedHue === null) return 'Invalid hex color';\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\n\t\t\t\t// Check if number\n\t\t\t\tconst num = Number.parseInt(trimmed, 10);\n\t\t\t\tif (Number.isNaN(num)) return 'Enter a hex code (#ff0000) or hue number (0-360)';\n\t\t\t\tif (num < 0 || num > 360) return 'Hue must be between 0 and 360';\n\t\t\t\treturn undefined;\n\t\t\t},\n\t\t});\n\n\t\tif (p.isCancel(customValue)) handleCancel();\n\n\t\tconst trimmed = (customValue as string).trim();\n\n\t\t// Convert hex to hue\n\t\tif (isHexColor(trimmed)) {\n\t\t\tconst parsedHue = hexToHue(trimmed);\n\t\t\tif (parsedHue !== null) {\n\t\t\t\tconst colorName = getColorName(parsedHue);\n\t\t\t\tp.log.success(\n\t\t\t\t\t`Converted ${pc.cyan(trimmed)} → ${pc.magenta(colorName)} (Hue: ${parsedHue})`\n\t\t\t\t);\n\t\t\t\treturn parsedHue;\n\t\t\t}\n\t\t}\n\n\t\t// Parse as number\n\t\treturn Number.parseInt(trimmed, 10);\n\t}\n\n\t// Show what preset was selected\n\tconst preset = PRESETS.find((p) => p.hue === hue);\n\tif (preset) {\n\t\tconst colorName = getColorName(preset.hue);\n\t\tp.log.info(`${pc.magenta(preset.name)} → ${colorName} (Hue: ${preset.hue})`);\n\t}\n\n\treturn hue as number;\n}\n\n/**\n * Ask for stylesheet path\n */\nexport async function askStylesheetPath(defaultPath: string): Promise<string> {\n\tconst path = await p.text({\n\t\tmessage: 'Where should the stylesheet be created?',\n\t\tplaceholder: defaultPath,\n\t\tdefaultValue: defaultPath,\n\t\tvalidate: (value) => {\n\t\t\tif (!value) return 'Please enter a path';\n\t\t\tif (!value.endsWith('.css')) return 'Path must end with .css';\n\t\t\treturn undefined;\n\t\t},\n\t});\n\n\tif (p.isCancel(path)) handleCancel();\n\n\treturn path as string;\n}\n\n/**\n * Confirm overwriting existing files\n */\nexport async function confirmOverwrite(filePath: string): Promise<boolean> {\n\tconst confirmed = await p.confirm({\n\t\tmessage: `${pc.yellow(filePath)} already exists. Overwrite it?`,\n\t\tinitialValue: false,\n\t});\n\n\tif (p.isCancel(confirmed)) handleCancel();\n\n\treturn confirmed as boolean;\n}\n\n/**\n * Confirm project initialization\n */\nexport async function confirmInit(\n\tconfigPath: string,\n\tstylesheetPath: string,\n\tmode: ArchitectureMode\n): Promise<boolean> {\n\tconst modeLabel = mode === 'greenfield' ? 'Greenfield' : 'Hybrid';\n\n\tshowNote(\n\t\t[\n\t\t\t`${pc.bold('Config:')} ${pc.cyan(configPath)}`,\n\t\t\t`${pc.bold('Stylesheet:')} ${pc.cyan(stylesheetPath)}`,\n\t\t\t`${pc.bold('Mode:')} ${pc.cyan(modeLabel)}`,\n\t\t].join('\\n'),\n\t\t'Files to create'\n\t);\n\n\tconst confirmed = await p.confirm({\n\t\tmessage: 'Proceed with initialization?',\n\t\tinitialValue: true,\n\t});\n\n\tif (p.isCancel(confirmed)) handleCancel();\n\n\treturn confirmed as boolean;\n}\n\n/**\n * Show log message\n */\nexport function log(message: string): void {\n\tp.log.message(message);\n}\n\n/**\n * Show success log\n */\nexport function logSuccess(message: string): void {\n\tp.log.success(message);\n}\n\n/**\n * Show warning log\n */\nexport function logWarning(message: string): void {\n\tp.log.warn(message);\n}\n\n/**\n * Show error log\n */\nexport function logError(message: string): void {\n\tp.log.error(message);\n}\n",
|
|
13
13
|
"/**\n * Color Utilities\n * Hex to OKLCH hue conversion\n */\n\n/**\n * Parse a hex color string to RGB values\n */\nfunction hexToRgb(hex: string): { r: number; g: number; b: number } | null {\n\t// Remove # if present\n\tconst cleaned = hex.replace(/^#/, '');\n\n\t// Support 3-char shorthand (#f0f -> #ff00ff)\n\tconst fullHex =\n\t\tcleaned.length === 3\n\t\t\t? cleaned\n\t\t\t\t\t.split('')\n\t\t\t\t\t.map((c) => c + c)\n\t\t\t\t\t.join('')\n\t\t\t: cleaned;\n\n\tif (fullHex.length !== 6) return null;\n\n\tconst result = /^([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(fullHex);\n\tif (!result) return null;\n\n\treturn {\n\t\tr: Number.parseInt(result[1], 16),\n\t\tg: Number.parseInt(result[2], 16),\n\t\tb: Number.parseInt(result[3], 16),\n\t};\n}\n\n/**\n * Convert RGB to HSL and extract hue\n * Returns hue in degrees (0-360)\n */\nfunction rgbToHue(r: number, g: number, b: number): number {\n\t// Normalize to 0-1\n\tconst rNorm = r / 255;\n\tconst gNorm = g / 255;\n\tconst bNorm = b / 255;\n\n\tconst max = Math.max(rNorm, gNorm, bNorm);\n\tconst min = Math.min(rNorm, gNorm, bNorm);\n\tconst delta = max - min;\n\n\t// Achromatic (gray) - return neutral hue\n\tif (delta === 0) return 250;\n\n\tlet hue: number;\n\n\tif (max === rNorm) {\n\t\thue = ((gNorm - bNorm) / delta) % 6;\n\t} else if (max === gNorm) {\n\t\thue = (bNorm - rNorm) / delta + 2;\n\t} else {\n\t\thue = (rNorm - gNorm) / delta + 4;\n\t}\n\n\thue = Math.round(hue * 60);\n\tif (hue < 0) hue += 360;\n\n\treturn hue;\n}\n\n/**\n * Convert hex color to OKLCH hue\n * Note: This is a simplified conversion that uses HSL hue as approximation\n * For production, consider using colorjs.io for accurate OKLCH conversion\n */\nexport function hexToHue(hex: string): number | null {\n\tconst rgb = hexToRgb(hex);\n\tif (!rgb) return null;\n\treturn rgbToHue(rgb.r, rgb.g, rgb.b);\n}\n\n/**\n * Check if a string looks like a hex color\n */\nexport function isHexColor(value: string): boolean {\n\treturn /^#?([a-fA-F0-9]{3}|[a-fA-F0-9]{6})$/.test(value.trim());\n}\n\n/**\n * Get a human-readable color name for a hue\n */\nexport function getColorName(hue: number): string {\n\t// Normalize hue to 0-360\n\tconst h = ((hue % 360) + 360) % 360;\n\n\tif (h >= 0 && h < 15) return 'Red';\n\tif (h >= 15 && h < 45) return 'Orange';\n\tif (h >= 45 && h < 75) return 'Yellow';\n\tif (h >= 75 && h < 105) return 'Lime';\n\tif (h >= 105 && h < 135) return 'Green';\n\tif (h >= 135 && h < 165) return 'Teal';\n\tif (h >= 165 && h < 195) return 'Cyan';\n\tif (h >= 195 && h < 225) return 'Sky';\n\tif (h >= 225 && h < 255) return 'Blue';\n\tif (h >= 255 && h < 285) return 'Indigo';\n\tif (h >= 285 && h < 315) return 'Purple';\n\tif (h >= 315 && h < 345) return 'Pink';\n\treturn 'Red';\n}\n\n/**\n * Shift CSS preset themes\n */\nexport interface ColorPreset {\n\tname: string;\n\thue: number;\n\tdescription: string;\n}\n\nexport const PRESETS: ColorPreset[] = [\n\t{ name: 'Plasma', hue: 260, description: 'Electric Blue - High-tech default' },\n\t{ name: 'Laser', hue: 320, description: 'Cyber-Pink - Neon futurism' },\n\t{ name: 'Acid', hue: 140, description: 'Toxic Green - Engineering edge' },\n\t{ name: 'Void', hue: 0, description: 'Monochrome - Industrial minimal' },\n];\n"
|
|
14
14
|
],
|
|
15
|
-
"mappings": "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",
|
|
16
|
-
"debugId": "
|
|
15
|
+
"mappings": "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",
|
|
16
|
+
"debugId": "4E2DFF2C0B8DBAC564756E2164756E21",
|
|
17
17
|
"names": []
|
|
18
18
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shift-css/cli",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "CLI tool for Shift CSS framework setup and migration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -34,13 +34,18 @@
|
|
|
34
34
|
"css",
|
|
35
35
|
"cli",
|
|
36
36
|
"shift-css",
|
|
37
|
-
"
|
|
38
|
-
"cascade-layers"
|
|
37
|
+
"init",
|
|
38
|
+
"cascade-layers",
|
|
39
|
+
"oklch"
|
|
39
40
|
],
|
|
40
41
|
"license": "MIT",
|
|
41
42
|
"repository": {
|
|
42
43
|
"type": "git",
|
|
43
|
-
"url": "git+https://github.com/
|
|
44
|
+
"url": "git+https://github.com/auswm85/shift-css.git",
|
|
44
45
|
"directory": "packages/cli"
|
|
45
|
-
}
|
|
46
|
+
},
|
|
47
|
+
"bugs": {
|
|
48
|
+
"url": "https://github.com/auswm85/shift-css/issues"
|
|
49
|
+
},
|
|
50
|
+
"homepage": "https://github.com/auswm85/shift-css#readme"
|
|
46
51
|
}
|