@arkitect-ui/cli 0.2.2 → 0.3.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arkitect-ui/cli",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "description": "CLI tool managing components for Arkitect-UI",
5
5
  "type": "module",
6
6
  "bin": {
@@ -3,7 +3,7 @@ import * as Option from "effect/Option";
3
3
  import * as FileSystem from "@effect/platform/FileSystem";
4
4
  import * as Path from "@effect/platform/Path";
5
5
  import * as HttpClient from "@effect/platform/HttpClient";
6
- export declare const addCommand: Command.Command<"add", FileSystem.FileSystem | Path.Path | HttpClient.HttpClient | import("@effect/platform/CommandExecutor").CommandExecutor, Error | import("@effect/platform/Error").PlatformError | import("effect/ParseResult").ParseError | import("@effect/platform/HttpClientError").HttpClientError, {
6
+ export declare const addCommand: Command.Command<"add", FileSystem.FileSystem | Path.Path | HttpClient.HttpClient | import("@effect/platform/CommandExecutor").CommandExecutor, Error | import("effect/ConfigError").ConfigError | import("@effect/platform/Error").PlatformError | import("effect/ParseResult").ParseError | import("@effect/platform/HttpClientError").HttpClientError, {
7
7
  readonly componentName: Option.Option<string>;
8
8
  readonly all: boolean;
9
9
  readonly overwrite: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAK9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAE7C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AA2CzD,eAAO,MAAM,UAAU;;;;;;EAsGtB,CAAA"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAK9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAE7C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AA4CzD,eAAO,MAAM,UAAU;;;;;;EA4PtB,CAAA"}
@@ -10,8 +10,9 @@ import * as Path from "@effect/platform/Path";
10
10
  import * as Schema from "effect/Schema";
11
11
  import * as HttpClient from "@effect/platform/HttpClient";
12
12
  import * as HttpClientResponse from "@effect/platform/HttpClientResponse";
13
+ import * as Config from "effect/Config";
13
14
  import { ComponentsConfig } from "../schemas/components-config.js";
14
- const REGISTRY_BASE_URL = "https://devx-op.github.io/arkitect-ui/r";
15
+ const DEFAULT_REGISTRY_BASE_URL = "https://devx-op.github.io/arkitect-ui/r";
15
16
  // Arguments and options for add command
16
17
  const componentNameArg = Args.text({ name: "component-name" }).pipe(Args.withDescription("Name of the Component to add"), Args.optional);
17
18
  const allOption = Options.boolean("all").pipe(Options.withAlias("a"), Options.withDescription("Install all available Components"), Options.withDefault(false));
@@ -29,7 +30,11 @@ export const addCommand = Command.make("add", {
29
30
  const fs = yield* FileSystem.FileSystem;
30
31
  const path = yield* Path.Path;
31
32
  const http = (yield* HttpClient.HttpClient).pipe(HttpClient.filterStatusOk);
32
- // 1. Check for components.json and detect framework
33
+ const registryBaseUrlRaw = yield* Config.string("REGISTRY_URL").pipe(Config.withDefault(DEFAULT_REGISTRY_BASE_URL));
34
+ const registryBaseUrl = registryBaseUrlRaw.endsWith("/")
35
+ ? registryBaseUrlRaw.slice(0, -1)
36
+ : registryBaseUrlRaw;
37
+ // 1. Check for components.json
33
38
  const configPath = path.join(options.cwd, "components.json");
34
39
  const hasConfig = yield* fs.exists(configPath);
35
40
  if (!hasConfig) {
@@ -37,10 +42,24 @@ export const addCommand = Command.make("add", {
37
42
  }
38
43
  const configContent = yield* fs.readFileString(configPath);
39
44
  const config = yield* Schema.decodeUnknown(Schema.parseJson(ComponentsConfig))(configContent);
40
- const framework = Option.fromNullable(config.arkitect?.framework).pipe(Option.orElse(() => Option.fromNullable(config.rsc).pipe(Option.map((rsc) => (rsc ? "react" : "react")))), Option.getOrElse(() => "react"));
41
- // Determine Registry URL path segment
42
- // React -> r/r, Solid -> r/s
43
- const frameworkPath = framework === "solid" ? "s" : "r";
45
+ // Detect framework from package.json (solid-js vs react dependency)
46
+ let framework = "react";
47
+ const packageJsonPath = path.join(options.cwd, "package.json");
48
+ const hasPackageJson = yield* fs.exists(packageJsonPath);
49
+ if (hasPackageJson) {
50
+ const packageJsonContent = yield* fs.readFileString(packageJsonPath);
51
+ const packageJson = JSON.parse(packageJsonContent);
52
+ const deps = {
53
+ ...packageJson.dependencies,
54
+ ...packageJson.devDependencies,
55
+ };
56
+ if (deps["solid-js"]) {
57
+ framework = "solid";
58
+ }
59
+ else if (deps["react"]) {
60
+ framework = "react";
61
+ }
62
+ }
44
63
  // 2. Resolve components to install
45
64
  let componentsToInstall = [];
46
65
  if (options.all) {
@@ -48,11 +67,13 @@ export const addCommand = Command.make("add", {
48
67
  const RegistryIndex = Schema.Struct({
49
68
  items: Schema.Array(Schema.Struct({ name: Schema.String, type: Schema.String })),
50
69
  });
51
- const response = yield* http.get(`${REGISTRY_BASE_URL}/index.json`);
70
+ const response = yield* http.get(`${registryBaseUrl}/index.json`);
52
71
  const registry = yield* HttpClientResponse.schemaBodyJson(RegistryIndex)(response);
72
+ const frameworkPrefix = framework === "solid" ? "s/" : "r/";
53
73
  componentsToInstall = registry.items
54
- .filter((item) => item.type === "registry:ui")
55
- .map((item) => item.name);
74
+ .filter((item) => item.type === "registry:ui" &&
75
+ item.name.startsWith(frameworkPrefix))
76
+ .map((item) => item.name.split("/")[1]);
56
77
  if (componentsToInstall.length === 0) {
57
78
  return yield* Console.log("⚠️ No components found to install.");
58
79
  }
@@ -65,10 +86,16 @@ export const addCommand = Command.make("add", {
65
86
  }
66
87
  // 3. Install Components
67
88
  yield* Console.log(`🚀 Installing ${componentsToInstall.length} component(s) for ${framework}...`);
89
+ // Determine Registry URL path segment
90
+ // React -> r/r, Solid -> r/s
91
+ const frameworkPath = framework === "solid" ? "s" : "r";
68
92
  // Install sequentially to avoid race conditions in shadcn
69
93
  for (const name of componentsToInstall) {
70
- const url = `${REGISTRY_BASE_URL}/${frameworkPath}/${name}.json`;
71
- const args = ["shadcn@latest", "add", url];
94
+ const args = [
95
+ "shadcn@latest",
96
+ "add",
97
+ `${registryBaseUrl}/${frameworkPath}/${name}.json`,
98
+ ];
72
99
  if (options.overwrite)
73
100
  args.push("--overwrite");
74
101
  const command = PlatformCommand.make("npx", ...args).pipe(PlatformCommand.workingDirectory(options.cwd));
@@ -77,7 +104,109 @@ export const addCommand = Command.make("add", {
77
104
  yield* Console.log(`[Dry Run] Would execute: npx ${args.join(" ")}`);
78
105
  }
79
106
  else {
80
- yield* PlatformCommand.string(command).pipe(Effect.catchAll((err) => Effect.fail(new Error(`Failed to install ${name}: ${err}`))));
107
+ const output = yield* PlatformCommand.string(command).pipe(Effect.catchAll((err) => Effect.fail(new Error(`Failed to install ${name}: ${err}`))));
108
+ if (output && output.length > 0) {
109
+ yield* Console.log(output);
110
+ }
111
+ // Verify created files; if not found, fallback to writing from registry JSON
112
+ const RegistryItem = Schema.Struct({
113
+ files: Schema.Array(Schema.Struct({
114
+ path: Schema.String,
115
+ content: Schema.String,
116
+ type: Schema.optional(Schema.String),
117
+ })),
118
+ dependencies: Schema.optional(Schema.Array(Schema.String)),
119
+ });
120
+ const itemUrl = `${registryBaseUrl}/${frameworkPath}/${name}.json`;
121
+ const itemResponse = yield* http.get(itemUrl);
122
+ const itemJson = yield* HttpClientResponse.schemaBodyJson(RegistryItem)(itemResponse);
123
+ const resolveAliasPath = (alias) => {
124
+ return alias.startsWith("@/")
125
+ ? path.join(options.cwd, "src", alias.replace("@/", ""))
126
+ : path.join(options.cwd, alias);
127
+ };
128
+ const componentsAlias = config.aliases.components;
129
+ const utilsAlias = config.aliases.utils;
130
+ const targetPaths = itemJson.files.map((file) => {
131
+ if (file.path.startsWith("ui/")) {
132
+ const baseDir = resolveAliasPath(componentsAlias);
133
+ return path.join(baseDir, file.path.replace("ui/", ""));
134
+ }
135
+ else if (file.path.startsWith("lib/")) {
136
+ const utilsBase = resolveAliasPath(utilsAlias);
137
+ // utils alias may point to a file (without .ts), ensure directory exists and file path matches
138
+ const isFileAlias = !utilsAlias.endsWith("/");
139
+ if (isFileAlias) {
140
+ // write directly to utils alias with extension from source path
141
+ const ext = file.path.split(".").pop() ?? "ts";
142
+ return `${utilsBase}.${ext}`;
143
+ }
144
+ else {
145
+ const baseDir = utilsBase;
146
+ return path.join(baseDir, file.path.replace("lib/", ""));
147
+ }
148
+ }
149
+ else {
150
+ // default to src root
151
+ return path.join(options.cwd, "src", file.path);
152
+ }
153
+ });
154
+ const existsResults = yield* Effect.forEach(targetPaths, (p) => fs.exists(p));
155
+ const missingIndexes = [];
156
+ for (let i = 0; i < existsResults.length; i++) {
157
+ if (!existsResults[i]) {
158
+ missingIndexes.push(i);
159
+ }
160
+ }
161
+ if (missingIndexes.length > 0) {
162
+ yield* Console.log("⚠️ Missing files after shadcn add. Applying fallback write.");
163
+ for (const index of missingIndexes) {
164
+ const file = itemJson.files[index];
165
+ const target = targetPaths[index];
166
+ const dir = path.dirname(target);
167
+ const hasDir = yield* fs.exists(dir);
168
+ if (!hasDir) {
169
+ yield* fs.makeDirectory(dir, { recursive: true });
170
+ }
171
+ yield* fs.writeFileString(target, file.content);
172
+ yield* Console.log(`✚ Created ${target}`);
173
+ }
174
+ yield* Console.log("✅ Fallback write completed.");
175
+ // Install missing dependencies from registry item
176
+ const depsList = itemJson.dependencies ?? [];
177
+ if (depsList.length > 0) {
178
+ const packageJsonPath2 = path.join(options.cwd, "package.json");
179
+ const hasPkg2 = yield* fs.exists(packageJsonPath2);
180
+ let installed = {};
181
+ if (hasPkg2) {
182
+ const content = yield* fs.readFileString(packageJsonPath2);
183
+ const pkg = JSON.parse(content);
184
+ installed = {
185
+ ...pkg.dependencies,
186
+ ...pkg.devDependencies,
187
+ };
188
+ }
189
+ const missing = depsList.filter((d) => !(d in installed));
190
+ if (missing.length > 0) {
191
+ yield* Console.log(`📦 Installing dependencies: ${missing.join(", ")}...`);
192
+ let pm = "npm";
193
+ const hasPnpmLock = yield* fs.exists(path.join(options.cwd, "pnpm-lock.yaml"));
194
+ const hasYarnLock = yield* fs.exists(path.join(options.cwd, "yarn.lock"));
195
+ const hasBunLock = yield* fs.exists(path.join(options.cwd, "bun.lockb"));
196
+ if (hasPnpmLock)
197
+ pm = "pnpm";
198
+ else if (hasYarnLock)
199
+ pm = "yarn";
200
+ else if (hasBunLock)
201
+ pm = "bun";
202
+ const installCmd = pm === "npm" ? "install" : "add";
203
+ const installArgs = [installCmd, ...missing];
204
+ const installCommand = PlatformCommand.make(pm, ...installArgs).pipe(PlatformCommand.workingDirectory(options.cwd));
205
+ yield* PlatformCommand.string(installCommand).pipe(Effect.catchAll((err) => Effect.fail(new Error(`Failed to install dependencies: ${err}`))));
206
+ yield* Console.log("✅ Dependencies installed successfully.");
207
+ }
208
+ }
209
+ }
81
210
  }
82
211
  }
83
212
  yield* Console.log("✅ All components installed successfully.");
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,eAAe,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAA;AACzE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAElE,MAAM,yBAAyB,GAAG,yCAAyC,CAAA;AAE3E,wCAAwC;AACxC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC,IAAI,CACjE,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,EACpD,IAAI,CAAC,QAAQ,CACd,CAAA;AAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EACtB,OAAO,CAAC,eAAe,CAAC,kCAAkC,CAAC,EAC3D,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3B,CAAA;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CACvD,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EACtB,OAAO,CAAC,eAAe,CAAC,0BAA0B,CAAC,EACnD,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3B,CAAA;AAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CACxC,OAAO,CAAC,eAAe,CAAC,2BAA2B,CAAC,EACpD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CACnC,CAAA;AAED,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAClD,OAAO,CAAC,eAAe,CAAC,gDAAgD,CAAC,EACzE,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3B,CAAA;AAUD,yBAAyB;AACzB,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CACpC,KAAK,EACL;IACE,aAAa,EAAE,gBAAgB;IAC/B,GAAG,EAAE,SAAS;IACd,SAAS,EAAE,eAAe;IAC1B,GAAG,EAAE,SAAS;IACd,MAAM,EAAE,YAAY;CACrB,EACD,CAAC,OAAmB,EAAE,EAAE,CACtB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAA;IACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAC7B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAC9C,UAAU,CAAC,cAAc,CAC1B,CAAA;IAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAClE,MAAM,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAC9C,CAAA;IACD,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC;QACtD,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,kBAAkB,CAAA;IAEtB,+BAA+B;IAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,KAAK,CAAC,yDAAyD,CAAC,CACrE,CAAA;IACH,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CACxC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CACnC,CAAC,aAAa,CAAC,CAAA;IAEhB,oEAAoE;IACpE,IAAI,SAAS,GAAsB,OAAO,CAAA;IAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IAC9D,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACxD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAClD,MAAM,IAAI,GAAG;YACX,GAAG,WAAW,CAAC,YAAY;YAC3B,GAAG,WAAW,CAAC,eAAe;SAC/B,CAAA;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACrB,SAAS,GAAG,OAAO,CAAA;QACrB,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,SAAS,GAAG,OAAO,CAAA;QACrB,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,IAAI,mBAAmB,GAAa,EAAE,CAAA;IAEtC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAA;QACjE,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;YAClC,KAAK,EAAE,MAAM,CAAC,KAAK,CACjB,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAC5D;SACF,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,aAAa,CAAC,CAAA;QACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAA;QAElF,MAAM,eAAe,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAE3D,mBAAmB,GAAG,QAAQ,CAAC,KAAK;aACjC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,aAAa;YAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CACxC;aACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAEzC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAChD,mBAAmB,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAC9D,CAAA;IACH,CAAC;IAED,wBAAwB;IACxB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,iBAAiB,mBAAmB,CAAC,MAAM,qBAAqB,SAAS,KAAK,CAC/E,CAAA;IAED,sCAAsC;IACtC,6BAA6B;IAC7B,MAAM,aAAa,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IAEvD,0DAA0D;IAC1D,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG;YACX,eAAe;YACf,KAAK;YACL,GAAG,eAAe,IAAI,aAAa,IAAI,IAAI,OAAO;SACnD,CAAA;QACD,IAAI,OAAO,CAAC,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAE/C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CACvD,eAAe,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAC9C,CAAA;QAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,KAAK,CAAC,CAAA;QAE3C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACtE,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACxD,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CACtF,CAAA;YACD,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC5B,CAAC;YACD,6EAA6E;YAC7E,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;gBACjC,KAAK,EAAE,MAAM,CAAC,KAAK,CACjB,MAAM,CAAC,MAAM,CAAC;oBACZ,IAAI,EAAE,MAAM,CAAC,MAAM;oBACnB,OAAO,EAAE,MAAM,CAAC,MAAM;oBACtB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;iBACrC,CAAC,CACH;gBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;aAC3D,CAAC,CAAA;YACF,MAAM,OAAO,GAAG,GAAG,eAAe,IAAI,aAAa,IAAI,IAAI,OAAO,CAAA;YAClE,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CACrE,YAAY,CACb,CAAA;YAED,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE;gBACzC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC3B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACxD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACnC,CAAC,CAAA;YAED,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAA;YACjD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAA;YAEvC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC9C,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChC,MAAM,OAAO,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;oBACjD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;gBACzD,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAA;oBAC9C,+FAA+F;oBAC/F,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;oBAC7C,IAAI,WAAW,EAAE,CAAC;wBAChB,gEAAgE;wBAChE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAA;wBAC9C,OAAO,GAAG,SAAS,IAAI,GAAG,EAAE,CAAA;oBAC9B,CAAC;yBAAM,CAAC;wBACN,MAAM,OAAO,GAAG,SAAS,CAAA;wBACzB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;oBAC1D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,sBAAsB;oBACtB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;gBACjD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAE7E,MAAM,cAAc,GAAkB,EAAE,CAAA;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,8DAA8D,CAC/D,CAAA;gBACD,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAClC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;oBACjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBACpC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,KAAK,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBACnD,CAAC;oBACD,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;oBAC/C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,EAAE,CAAC,CAAA;gBAC3C,CAAC;gBACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;gBAEjD,kDAAkD;gBAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAA;gBAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;oBAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;oBAClD,IAAI,SAAS,GAA2B,EAAE,CAAA;oBAC1C,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAA;wBAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;wBAC/B,SAAS,GAAG;4BACV,GAAG,GAAG,CAAC,YAAY;4BACnB,GAAG,GAAG,CAAC,eAAe;yBACvB,CAAA;oBACH,CAAC;oBACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAA;oBACzD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,+BAA+B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CACvD,CAAA;wBACD,IAAI,EAAE,GAAG,KAAK,CAAA;wBACd,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC,CACzC,CAAA;wBACD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CACpC,CAAA;wBACD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CACjC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CACpC,CAAA;wBACD,IAAI,WAAW;4BAAE,EAAE,GAAG,MAAM,CAAA;6BACvB,IAAI,WAAW;4BAAE,EAAE,GAAG,MAAM,CAAA;6BAC5B,IAAI,UAAU;4BAAE,EAAE,GAAG,KAAK,CAAA;wBAC/B,MAAM,UAAU,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;wBACnD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC,CAAA;wBAC5C,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CACzC,EAAE,EACF,GAAG,WAAW,CACf,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;wBACrD,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CACtB,MAAM,CAAC,IAAI,CACT,IAAI,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,CACpD,CACF,CACF,CAAA;wBACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;oBAC9D,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;AAChE,CAAC,CAAC,CACL,CAAA"}
@@ -9,6 +9,6 @@ export declare const initCommand: Command.Command<"init", FileSystem.FileSystem
9
9
  readonly utilsPath: Option.Option<string>;
10
10
  readonly cssPath: Option.Option<string>;
11
11
  readonly yes: boolean;
12
- readonly installDeps: Option.Option<boolean>;
12
+ readonly installDeps: Option.Option<"yes" | "no" | "true" | "false">;
13
13
  }>;
14
14
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAI9C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAGzD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAyDvC,eAAO,MAAM,WAAW;;;;;;;;;EAgLvB,CAAA"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAI9C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAGzD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAmEvC,eAAO,MAAM,WAAW;;;;;;;;;EAkZvB,CAAA"}
@@ -8,6 +8,10 @@ import * as Effect from "effect/Effect";
8
8
  import * as Option from "effect/Option";
9
9
  import * as Schema from "effect/Schema";
10
10
  import { ComponentsConfig } from "../schemas/components-config.js";
11
+ import * as NodePath from "node:path";
12
+ import { fileURLToPath } from "node:url";
13
+ const here = NodePath.dirname(fileURLToPath(import.meta.url));
14
+ const cssTemplatePath = NodePath.resolve(here, "../../templates/global.css");
11
15
  // Options for the init command
12
16
  const cwdOption = Options.text("cwd").pipe(Options.withDescription("Current working directory"), Options.withDefault(process.cwd()));
13
17
  const frameworkOption = Options.choice("framework", ["react", "solid"]).pipe(Options.withDescription("Framework to use"), Options.optional);
@@ -16,7 +20,12 @@ const componentsDirOption = Options.text("components-dir").pipe(Options.withDesc
16
20
  const utilsPathOption = Options.text("utils-path").pipe(Options.withDescription("Utils file path"), Options.optional);
17
21
  const cssPathOption = Options.text("css-path").pipe(Options.withDescription("Global CSS file path"), Options.optional);
18
22
  const yesOption = Options.boolean("yes").pipe(Options.withAlias("y"), Options.withDescription("Skip prompts and use defaults/flags"));
19
- const installDepsOption = Options.boolean("install-deps").pipe(Options.withDescription("Install dependencies automatically"), Options.optional);
23
+ const installDepsOption = Options.choice("install-deps", [
24
+ "yes",
25
+ "no",
26
+ "true",
27
+ "false",
28
+ ]).pipe(Options.withDescription("Install dependencies after setup: yes or no"), Options.optional);
20
29
  // Export the init command
21
30
  export const initCommand = Command.make("init", {
22
31
  cwd: cwdOption,
@@ -87,51 +96,236 @@ export const initCommand = Command.make("init", {
87
96
  rsc: framework === "react",
88
97
  tsx: true,
89
98
  tailwind: {
90
- config: "tailwind.config.js",
99
+ config: "",
91
100
  css: cssPath,
92
101
  baseColor: "slate",
93
102
  cssVariables: true,
94
103
  prefix: "",
95
104
  },
96
105
  aliases: {
106
+ // Use import-style aliases; TS config handles resolving "@/..."
97
107
  components: `@/${componentsDir.replace(`${srcDir}/`, "")}`,
98
108
  utils: `@/${utilsPath.replace(`${srcDir}/`, "").replace(".ts", "")}`,
99
109
  ui: `@/${componentsDir.replace(`${srcDir}/`, "")}`,
100
110
  },
101
- arkitect: {
102
- framework: framework,
103
- },
104
111
  });
105
- const encodedConfig = yield* Schema.encode(Schema.parseJson(ComponentsConfig))(componentsConfig);
106
- yield* fs.writeFileString(`${options.cwd}/components.json`, encodedConfig);
112
+ const encodedConfig = yield* Schema.encode(ComponentsConfig)(componentsConfig);
113
+ const encodedJson = JSON.stringify(encodedConfig, null, 2);
114
+ yield* fs.writeFileString(`${options.cwd}/components.json`, `${encodedJson}\n`);
107
115
  yield* Console.log("✅ components.json created successfully.");
108
- // 4. Install Dependencies
116
+ const cssTargetPath = NodePath.isAbsolute(cssPath)
117
+ ? cssPath
118
+ : NodePath.join(options.cwd, cssPath);
119
+ const hasTemplate = yield* fs.exists(cssTemplatePath);
120
+ if (hasTemplate) {
121
+ const cssDir = NodePath.dirname(cssTargetPath);
122
+ const hasCssDir = yield* fs.exists(cssDir);
123
+ if (!hasCssDir) {
124
+ yield* fs.makeDirectory(cssDir, { recursive: true });
125
+ }
126
+ const cssContent = yield* fs.readFileString(cssTemplatePath);
127
+ yield* fs.writeFileString(cssTargetPath, cssContent);
128
+ yield* Console.log(`✅ Global CSS created at ${cssPath}`);
129
+ }
130
+ else {
131
+ yield* Console.log("⚠️ Arkitect UI CSS template not found. Skipping CSS file creation.");
132
+ }
133
+ const utilsTargetPath = NodePath.isAbsolute(utilsPath)
134
+ ? utilsPath
135
+ : NodePath.join(options.cwd, utilsPath);
136
+ const hasUtils = yield* fs.exists(utilsTargetPath);
137
+ if (!hasUtils) {
138
+ const utilsDir = NodePath.dirname(utilsTargetPath);
139
+ const hasUtilsDir = yield* fs.exists(utilsDir);
140
+ if (!hasUtilsDir) {
141
+ yield* fs.makeDirectory(utilsDir, { recursive: true });
142
+ }
143
+ const utilsContent = 'import { type ClassValue, clsx } from "clsx"\n' +
144
+ 'import { twMerge } from "tailwind-merge"\n\n' +
145
+ "export function cn(...inputs: ClassValue[]) {\n" +
146
+ " return twMerge(clsx(inputs))\n" +
147
+ "}\n";
148
+ yield* fs.writeFileString(utilsTargetPath, utilsContent);
149
+ yield* Console.log(`✅ Utils file created at ${utilsPath}`);
150
+ }
151
+ // 3.1 Update tsconfig paths to match aliases
152
+ const tsconfigPath = `${options.cwd}/tsconfig.json`;
153
+ const hasTsconfig = yield* fs.exists(tsconfigPath);
154
+ if (hasTsconfig) {
155
+ try {
156
+ const tsContent = yield* fs.readFileString(tsconfigPath);
157
+ const raw = tsContent
158
+ .replace(/\/\*[\s\S]*?\*\//g, "")
159
+ .replace(/^\s*\/\/.*$/gm, "");
160
+ const ts = JSON.parse(raw);
161
+ ts.compilerOptions ??= {};
162
+ ts.compilerOptions.baseUrl ??= ".";
163
+ // Use simplified generic alias mapping
164
+ ts.compilerOptions.paths = {
165
+ "@/*": [`./${srcDir}/*`],
166
+ ...ts.compilerOptions.paths,
167
+ };
168
+ yield* fs.writeFileString(tsconfigPath, JSON.stringify(ts, null, 2) + "\n");
169
+ yield* Console.log("✅ tsconfig.json paths updated.");
170
+ }
171
+ catch {
172
+ yield* Console.log("⚠️ Failed to update paths in tsconfig.json.");
173
+ }
174
+ }
175
+ // 3.1b If tsconfig.app.json exists, ensure it also has baseUrl and generic @/* paths
176
+ const tsconfigAppPath = `${options.cwd}/tsconfig.app.json`;
177
+ const hasTsconfigApp = yield* fs.exists(tsconfigAppPath);
178
+ if (hasTsconfigApp) {
179
+ try {
180
+ const tsContent = yield* fs.readFileString(tsconfigAppPath);
181
+ const raw = tsContent
182
+ .replace(/\/\*[\s\S]*?\*\//g, "")
183
+ .replace(/^\s*\/\/.*$/gm, "");
184
+ const ts = JSON.parse(raw);
185
+ ts.compilerOptions ??= {};
186
+ ts.compilerOptions.baseUrl ??= ".";
187
+ ts.compilerOptions.paths = {
188
+ "@/*": [`./${srcDir}/*`],
189
+ ...ts.compilerOptions.paths,
190
+ };
191
+ yield* fs.writeFileString(tsconfigAppPath, JSON.stringify(ts, null, 2) + "\n");
192
+ yield* Console.log("✅ tsconfig.app.json paths updated.");
193
+ }
194
+ catch {
195
+ yield* Console.log("⚠️ Failed to update paths in tsconfig.app.json.");
196
+ }
197
+ }
198
+ // 3.2 Update Vite resolve.alias for "@/..." if this is a Vite project
199
+ const viteConfigCandidates = [
200
+ "vite.config.ts",
201
+ "vite.config.mts",
202
+ "vite.config.js",
203
+ "vite.config.mjs",
204
+ ];
205
+ let viteConfigPath;
206
+ for (const rel of viteConfigCandidates) {
207
+ const full = `${options.cwd}/${rel}`;
208
+ const exists = yield* fs.exists(full);
209
+ if (exists) {
210
+ viteConfigPath = full;
211
+ break;
212
+ }
213
+ }
214
+ if (viteConfigPath) {
215
+ try {
216
+ const viteContent = yield* fs.readFileString(viteConfigPath);
217
+ // If alias "@" already exists, respect existing configuration
218
+ const hasAtAlias = /['"]@['"]\s*:/.test(viteContent);
219
+ if (!hasAtAlias) {
220
+ // Ensure we can use fileURLToPath / URL for robust ESM-safe alias
221
+ let updated = viteContent;
222
+ if (!updated.includes('from "node:url"') &&
223
+ !updated.includes("from 'node:url'")) {
224
+ updated = 'import { fileURLToPath, URL } from "node:url";\n' + updated;
225
+ }
226
+ const aliasLine = ' "@": fileURLToPath(new URL("./src", import.meta.url)),';
227
+ if (updated.includes("alias: {")) {
228
+ updated = updated.replace(/alias:\s*\{/, `alias: {\n${aliasLine}`);
229
+ }
230
+ else if (updated.includes("resolve: {")) {
231
+ updated = updated.replace(/resolve:\s*\{/, `resolve: {\n alias: {\n${aliasLine}\n },`);
232
+ }
233
+ else if (updated.includes("defineConfig({")) {
234
+ updated = updated.replace(/defineConfig\(\s*\{/, `defineConfig({\n resolve: {\n alias: {\n${aliasLine}\n },\n },`);
235
+ }
236
+ if (updated !== viteContent) {
237
+ yield* fs.writeFileString(viteConfigPath, updated);
238
+ yield* Console.log("✅ Vite alias @ updated.");
239
+ }
240
+ }
241
+ }
242
+ catch {
243
+ yield* Console.log("⚠️ Failed to update Vite resolve.alias.");
244
+ }
245
+ }
246
+ // 4. Ensure dependencies in package.json
247
+ const baseDeps = ["clsx", "tailwind-merge", "class-variance-authority"];
248
+ const allDeps = [...baseDeps];
249
+ const versionTemplate = {
250
+ clsx: "2.1.1",
251
+ "tailwind-merge": "3.4.0",
252
+ "class-variance-authority": "0.7.1",
253
+ };
254
+ // Ensure dependencies exist in package.json using the template versions
255
+ const hasPackageJsonForDeps = yield* fs.exists(packageJsonPath);
256
+ if (hasPackageJsonForDeps) {
257
+ const pkgContent = yield* fs.readFileString(packageJsonPath);
258
+ const pkg = JSON.parse(pkgContent);
259
+ pkg.dependencies ??= {};
260
+ pkg.devDependencies ??= {};
261
+ for (const dep of allDeps) {
262
+ if (!pkg.dependencies[dep] && !pkg.devDependencies[dep]) {
263
+ const version = versionTemplate[dep];
264
+ if (version) {
265
+ pkg.dependencies[dep] = version;
266
+ }
267
+ }
268
+ }
269
+ yield* fs.writeFileString(packageJsonPath, JSON.stringify(pkg, null, 2) + "\n");
270
+ yield* Console.log("✅ package.json dependencies updated.");
271
+ }
272
+ else {
273
+ yield* Console.log("⚠️ package.json not found. Skipping dependency hints.");
274
+ }
275
+ // 5. Optionally install dependencies (interactive if not specified)
276
+ // Detect package manager walking up from cwd to workspace root
277
+ let pm = "npm";
278
+ {
279
+ let currentDir = options.cwd;
280
+ for (let i = 0; i < 5; i++) {
281
+ const pnpmLock = NodePath.join(currentDir, "pnpm-lock.yaml");
282
+ const yarnLock = NodePath.join(currentDir, "yarn.lock");
283
+ const bunLock = NodePath.join(currentDir, "bun.lockb");
284
+ const pkgLock = NodePath.join(currentDir, "package-lock.json");
285
+ const hasPnpmLock = yield* fs.exists(pnpmLock);
286
+ const hasYarnLock = yield* fs.exists(yarnLock);
287
+ const hasBunLock = yield* fs.exists(bunLock);
288
+ const hasPkgLock = yield* fs.exists(pkgLock);
289
+ if (hasPnpmLock) {
290
+ pm = "pnpm";
291
+ break;
292
+ }
293
+ if (hasYarnLock) {
294
+ pm = "yarn";
295
+ break;
296
+ }
297
+ if (hasBunLock) {
298
+ pm = "bun";
299
+ break;
300
+ }
301
+ if (hasPkgLock) {
302
+ pm = "npm";
303
+ break;
304
+ }
305
+ const parent = NodePath.dirname(currentDir);
306
+ if (parent === currentDir) {
307
+ break;
308
+ }
309
+ currentDir = parent;
310
+ }
311
+ }
109
312
  const shouldInstallDeps = yield* Option.match(options.installDeps, {
110
313
  onNone: () => options.yes
111
- ? Effect.succeed(true)
314
+ ? Effect.succeed(false)
112
315
  : Prompt.confirm({
113
- message: "Would you like to install required dependencies now?",
316
+ message: `Install required Arkitect UI dependencies now with ${pm}?`,
114
317
  initial: true,
115
318
  }),
116
- onSome: Effect.succeed,
319
+ onSome: (v) => Effect.succeed(v === "yes" || v === "true"),
117
320
  });
118
321
  if (shouldInstallDeps) {
119
- const baseDeps = ["clsx", "tailwind-merge", "class-variance-authority"];
120
- const frameworkDeps = framework === "react" ? ["@ark-ui/react"] : ["@ark-ui/solid"];
121
- const allDeps = [...baseDeps, ...frameworkDeps];
122
322
  yield* Console.log(`📦 Installing dependencies: ${allDeps.join(", ")}...`);
123
- let pm = "npm";
124
- const hasPnpmLock = yield* fs.exists(`${options.cwd}/pnpm-lock.yaml`);
125
- const hasYarnLock = yield* fs.exists(`${options.cwd}/yarn.lock`);
126
- const hasBunLock = yield* fs.exists(`${options.cwd}/bun.lockb`);
127
- if (hasPnpmLock)
128
- pm = "pnpm";
129
- else if (hasYarnLock)
130
- pm = "yarn";
131
- else if (hasBunLock)
132
- pm = "bun";
133
323
  const installCmd = pm === "npm" ? "install" : "add";
134
- const args = [installCmd, ...allDeps];
324
+ const depArgs = allDeps.map((dep) => {
325
+ const version = versionTemplate[dep];
326
+ return version ? `${dep}@${version}` : dep;
327
+ });
328
+ const args = [installCmd, ...depArgs];
135
329
  const command = PlatformCommand.make(pm, ...args).pipe(PlatformCommand.workingDirectory(options.cwd));
136
330
  yield* PlatformCommand.string(command).pipe(Effect.catchAll((err) => Effect.fail(new Error(`Failed to install dependencies: ${err}`))));
137
331
  yield* Console.log("✅ Dependencies installed successfully.");
@@ -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,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,eAAe,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7D,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAAA;AAE5E,+BAA+B;AAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CACxC,OAAO,CAAC,eAAe,CAAC,2BAA2B,CAAC,EACpD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CACnC,CAAA;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAC1E,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAC3C,OAAO,CAAC,QAAQ,CACjB,CAAA;AAED,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAC/C,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAC3C,OAAO,CAAC,QAAQ,CACjB,CAAA;AAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAC7D,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAC/C,OAAO,CAAC,QAAQ,CACjB,CAAA;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CACrD,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAC1C,OAAO,CAAC,QAAQ,CACjB,CAAA;AAED,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CACjD,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAC/C,OAAO,CAAC,QAAQ,CACjB,CAAA;AAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EACtB,OAAO,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAC/D,CAAA;AAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE;IACvD,KAAK;IACL,IAAI;IACJ,MAAM;IACN,OAAO;CACR,CAAC,CAAC,IAAI,CACL,OAAO,CAAC,eAAe,CAAC,6CAA6C,CAAC,EACtE,OAAO,CAAC,QAAQ,CACjB,CAAA;AAaD,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CACrC,MAAM,EACN;IACE,GAAG,EAAE,SAAS;IACd,SAAS,EAAE,eAAe;IAC1B,MAAM,EAAE,YAAY;IACpB,aAAa,EAAE,mBAAmB;IAClC,SAAS,EAAE,eAAe;IAC1B,OAAO,EAAE,aAAa;IACtB,GAAG,EAAE,SAAS;IACd,WAAW,EAAE,iBAAiB;CAC/B,EACD,CAAC,OAAoB,EAAE,EAAE,CACvB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAA;IAEvC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;IAElE,sBAAsB;IACtB,IAAI,iBAAiB,GAAsB,OAAO,CAAA;IAClD,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,GAAG,eAAe,CAAA;IACrD,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IAExD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAClD,MAAM,IAAI,GAAG;YACX,GAAG,WAAW,CAAC,YAAY;YAC3B,GAAG,WAAW,CAAC,eAAe;SAC/B,CAAA;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACrB,iBAAiB,GAAG,OAAO,CAAA;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,iBAAiB,GAAG,OAAO,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;QACvD,MAAM,EAAE,GAAG,EAAE,CACX,OAAO,CAAC,GAAG;YACT,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,gCAAgC;gBACzC,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,OAAO;wBACd,QAAQ,EAAE,iBAAiB,KAAK,OAAO;qBACxC;oBACD;wBACE,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,OAAO;wBACd,QAAQ,EAAE,iBAAiB,KAAK,OAAO;qBACxC;iBACF;aACF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAsB,CAAC,CAAC;QACtD,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAsB,CAAC;KACtD,CAAC,CAAA;IAEF,mBAAmB;IACnB,MAAM,WAAW,GAAG,CAClB,MAA6B,EAC7B,SAAiB,EACjB,YAAoB,EACpB,EAAE,CACF,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;QACnB,MAAM,EAAE,GAAG,EAAE,CACX,OAAO,CAAC,GAAG;YACT,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAChE,MAAM,EAAE,MAAM,CAAC,OAAO;KACvB,CAAC,CAAA;IAEJ,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,WAAW,CAC/B,OAAO,CAAC,MAAM,EACd,iCAAiC,EACjC,KAAK,CACN,CAAA;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,WAAW,CACtC,OAAO,CAAC,aAAa,EACrB,6CAA6C,EAC7C,GAAG,MAAM,gBAAgB,CAC1B,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,WAAW,CAClC,OAAO,CAAC,SAAS,EACjB,mCAAmC,EACnC,GAAG,MAAM,eAAe,CACzB,CAAA;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,WAAW,CAChC,OAAO,CAAC,OAAO,EACf,gCAAgC,EAChC,GAAG,MAAM,YAAY,CACtB,CAAA;IAED,8BAA8B;IAC9B,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC5C,OAAO,EAAE,mCAAmC;QAC5C,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS,KAAK,OAAO;QAC1B,GAAG,EAAE,IAAI;QACT,QAAQ,EAAE;YACR,MAAM,EAAE,EAAE;YACV,GAAG,EAAE,OAAO;YACZ,SAAS,EAAE,OAAO;YAClB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,EAAE;SACX;QACD,OAAO,EAAE;YACP,gEAAgE;YAChE,UAAU,EAAE,KAAK,aAAa,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,CAAC,EAAE;YAC1D,KAAK,EAAE,KAAK,SAAS,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE;YACpE,EAAE,EAAE,KAAK,aAAa,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,CAAC,EAAE;SACnD;KACF,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAE1D,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CACvB,GAAG,OAAO,CAAC,GAAG,kBAAkB,EAChC,GAAG,WAAW,IAAI,CACnB,CAAA;IACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;IAE7D,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAEvC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACrD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,KAAK,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACtD,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QAC5D,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;QACpD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,qEAAqE,CACtE,CAAA;IACH,CAAC;IAED,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;QACpD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QAClD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,YAAY,GAAG,gDAAgD;YACnE,8CAA8C;YAC9C,iDAAiD;YACjD,kCAAkC;YAClC,KAAK,CAAA;QACP,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;QACxD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,6CAA6C;IAC7C,MAAM,YAAY,GAAG,GAAG,OAAO,CAAC,GAAG,gBAAgB,CAAA;IACnD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAElD,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;YACxD,MAAM,GAAG,GAAG,SAAS;iBAClB,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;iBAChC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1B,EAAE,CAAC,eAAe,KAAK,EAAE,CAAA;YACzB,EAAE,CAAC,eAAe,CAAC,OAAO,KAAK,GAAG,CAAA;YAClC,uCAAuC;YACvC,EAAE,CAAC,eAAe,CAAC,KAAK,GAAG;gBACzB,KAAK,EAAE,CAAC,KAAK,MAAM,IAAI,CAAC;gBACxB,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK;aAC5B,CAAA;YAED,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CACvB,YAAY,EACZ,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACnC,CAAA;YACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,GAAG,oBAAoB,CAAA;IAC1D,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACxD,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;YAC3D,MAAM,GAAG,GAAG,SAAS;iBAClB,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;iBAChC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1B,EAAE,CAAC,eAAe,KAAK,EAAE,CAAA;YACzB,EAAE,CAAC,eAAe,CAAC,OAAO,KAAK,GAAG,CAAA;YAClC,EAAE,CAAC,eAAe,CAAC,KAAK,GAAG;gBACzB,KAAK,EAAE,CAAC,KAAK,MAAM,IAAI,CAAC;gBACxB,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK;aAC5B,CAAA;YACD,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CACvB,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACnC,CAAA;YACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAA;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,kDAAkD,CACnD,CAAA;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,MAAM,oBAAoB,GAAG;QAC3B,gBAAgB;QAChB,iBAAiB;QACjB,gBAAgB;QAChB,iBAAiB;KACT,CAAA;IAEV,IAAI,cAAkC,CAAA;IACtC,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,GAAG,EAAE,CAAA;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,MAAM,EAAE,CAAC;YACX,cAAc,GAAG,IAAI,CAAA;YACrB,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;YAE5D,8DAA8D;YAC9D,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAEpD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,kEAAkE;gBAClE,IAAI,OAAO,GAAG,WAAW,CAAA;gBACzB,IACE,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;oBACpC,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EACpC,CAAC;oBACD,OAAO,GAAG,kDAAkD,GAAG,OAAO,CAAA;gBACxE,CAAC;gBAED,MAAM,SAAS,GAAG,8DAA8D,CAAA;gBAEhF,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBACjC,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,aAAa,EACb,aAAa,SAAS,EAAE,CACzB,CAAA;gBACH,CAAC;qBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC1C,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,eAAe,EACf,6BAA6B,SAAS,UAAU,CACjD,CAAA;gBACH,CAAC;qBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC9C,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,qBAAqB,EACrB,+CAA+C,SAAS,gBAAgB,CACzE,CAAA;gBACH,CAAC;gBAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;oBAC5B,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;oBAClD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;gBAC/C,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,0BAA0B,CAAC,CAAA;IACvE,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAA;IAE7B,MAAM,eAAe,GAA2B;QAC9C,IAAI,EAAE,OAAO;QACb,gBAAgB,EAAE,OAAO;QACzB,0BAA0B,EAAE,OAAO;KACpC,CAAA;IAED,wEAAwE;IACxE,MAAM,qBAAqB,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IAC/D,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAClC,GAAG,CAAC,YAAY,KAAK,EAAE,CAAA;QACvB,GAAG,CAAC,eAAe,KAAK,EAAE,CAAA;QAC1B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;gBACpC,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CACvB,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACpC,CAAA;QACD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAA;IAC5D,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,wDAAwD,CACzD,CAAA;IACH,CAAC;IAED,oEAAoE;IACpE,+DAA+D;IAC/D,IAAI,EAAE,GAAG,KAAK,CAAA;IACd,CAAC;QACC,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAA;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAA;YAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;YACvD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;YACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;YAE9D,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAE5C,IAAI,WAAW,EAAE,CAAC;gBAChB,EAAE,GAAG,MAAM,CAAA;gBACX,MAAK;YACP,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,EAAE,GAAG,MAAM,CAAA;gBACX,MAAK;YACP,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,EAAE,GAAG,KAAK,CAAA;gBACV,MAAK;YACP,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,EAAE,GAAG,KAAK,CAAA;gBACV,MAAK;YACP,CAAC;YAED,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAC3C,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,MAAK;YACP,CAAC;YACD,UAAU,GAAG,MAAM,CAAA;QACrB,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;QACjE,MAAM,EAAE,GAAG,EAAE,CACX,OAAO,CAAC,GAAG;YACT,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBACf,OAAO,EAAE,sDAAsD,EAAE,GAAG;gBACpE,OAAO,EAAE,IAAI;aACd,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,MAAM,CAAC;KAC3D,CAAC,CAAA;IAEF,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,+BAA+B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CACvD,CAAA;QAED,MAAM,UAAU,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;QAEnD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAClC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;YACpC,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC,CAAA;QAErC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CACpD,eAAe,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAC9C,CAAA;QAED,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC,CAAC,CAC3F,CAAA;QAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC,CAAC,CACL,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import * as Command from "@effect/cli/Command";
2
2
  import * as FileSystem from "@effect/platform/FileSystem";
3
- export declare const listCommand: Command.Command<"list", FileSystem.FileSystem, Error | import("@effect/platform/Error").PlatformError, {}>;
3
+ export declare const listCommand: Command.Command<"list", FileSystem.FileSystem, Error | import("effect/ConfigError").ConfigError | import("@effect/platform/Error").PlatformError, {}>;
4
4
  //# sourceMappingURL=list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAI9C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAgBzD,eAAO,MAAM,WAAW,4GAsDnB,CAAA"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAI9C,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAiBzD,eAAO,MAAM,WAAW,uJA6DnB,CAAA"}
@@ -4,11 +4,16 @@ import * as Effect from "effect/Effect";
4
4
  import * as Option from "effect/Option";
5
5
  import * as FileSystem from "@effect/platform/FileSystem";
6
6
  import * as Schema from "effect/Schema";
7
+ import * as Config from "effect/Config";
7
8
  import { ComponentsConfig } from "../schemas/components-config.js";
8
- const REGISTRY_INDEX_URL = "https://devx-op.github.io/arkitect-ui/r/index.json";
9
+ const DEFAULT_REGISTRY_BASE_URL = "https://devx-op.github.io/arkitect-ui/r";
9
10
  export const listCommand = Command.make("list", {}, () => Effect.gen(function* () {
10
11
  const fs = yield* FileSystem.FileSystem;
11
12
  yield* Console.log("🔍 Fetching components from Arkitect UI registry...");
13
+ const registryBaseUrlRaw = yield* Config.string("REGISTRY_URL").pipe(Config.withDefault(DEFAULT_REGISTRY_BASE_URL));
14
+ const registryBaseUrl = registryBaseUrlRaw.endsWith("/")
15
+ ? registryBaseUrlRaw.slice(0, -1)
16
+ : registryBaseUrlRaw;
12
17
  // Detect framework from components.json if available
13
18
  let framework = Option.none();
14
19
  const hasConfig = yield* fs.exists("components.json");
@@ -19,7 +24,7 @@ export const listCommand = Command.make("list", {}, () => Effect.gen(function* (
19
24
  }
20
25
  // Fetch registry index
21
26
  const response = yield* Effect.tryPromise({
22
- try: () => fetch(REGISTRY_INDEX_URL),
27
+ try: () => fetch(`${registryBaseUrl}/index.json`),
23
28
  catch: (err) => new Error(`Failed to fetch registry: ${err}`),
24
29
  });
25
30
  if (!response.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/list.ts"],"names":[],"mappings":"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"}
package/dist/src/main.js CHANGED
@@ -5,9 +5,9 @@ import * as NodeRuntime from "@effect/platform-node/NodeRuntime";
5
5
  import * as NodeHttpClient from "@effect/platform-node/NodeHttpClient";
6
6
  import * as Console from "effect/Console";
7
7
  import * as Effect from "effect/Effect";
8
- import { addCommand } from "./commands/add";
9
- import { initCommand } from "./commands/init";
10
- import { listCommand } from "./commands/list";
8
+ import { addCommand } from "./commands/add.js";
9
+ import { initCommand } from "./commands/init.js";
10
+ import { listCommand } from "./commands/list.js";
11
11
  // Main CLI command
12
12
  const arkitectUiCommand = Command.make("arkitect-ui", {}, () => Console.log("🚀 arkitect-ui CLI - Use --help to see available commands")).pipe(Command.withSubcommands([addCommand, initCommand, listCommand]));
13
13
  // Run the CLI
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,mCAAmC,CAAA;AAChE,OAAO,KAAK,WAAW,MAAM,mCAAmC,CAAA;AAChE,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;AACtE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,mBAAmB;AACnB,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CACpC,aAAa,EACb,EAAE,EACF,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAC/E,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;AAEvE,cAAc;AACd,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;IACzC,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAA;AAEF,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACpB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,EACpC,WAAW,CAAC,OAAO,CACpB,CAAA"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,mCAAmC,CAAA;AAChE,OAAO,KAAK,WAAW,MAAM,mCAAmC,CAAA;AAChE,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;AACtE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEhD,mBAAmB;AACnB,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CACpC,aAAa,EACb,EAAE,EACF,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAC/E,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;AAEvE,cAAc;AACd,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;IACzC,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAA;AAEF,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACpB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,EACpC,WAAW,CAAC,OAAO,CACpB,CAAA"}
@@ -0,0 +1,129 @@
1
+ @import "tailwindcss";
2
+
3
+ @theme {
4
+ --color-border: hsl(var(--border));
5
+ --color-input: hsl(var(--input));
6
+ --color-ring: hsl(var(--ring));
7
+ --color-background: hsl(var(--background));
8
+ --color-foreground: hsl(var(--foreground));
9
+
10
+ --color-primary: hsl(var(--primary));
11
+ --color-primary-foreground: hsl(var(--primary-foreground));
12
+
13
+ --color-secondary: hsl(var(--secondary));
14
+ --color-secondary-foreground: hsl(var(--secondary-foreground));
15
+
16
+ --color-destructive: hsl(var(--destructive));
17
+ --color-destructive-foreground: hsl(var(--destructive-foreground));
18
+
19
+ --color-muted: hsl(var(--muted));
20
+ --color-muted-foreground: hsl(var(--muted-foreground));
21
+
22
+ --color-accent: hsl(var(--accent));
23
+ --color-accent-foreground: hsl(var(--accent-foreground));
24
+
25
+ --color-popover: hsl(var(--popover));
26
+ --color-popover-foreground: hsl(var(--popover-foreground));
27
+
28
+ --color-card: hsl(var(--card));
29
+ --color-card-foreground: hsl(var(--card-foreground));
30
+
31
+ --radius-lg: var(--radius);
32
+ --radius-md: calc(var(--radius) - 2px);
33
+ --radius-sm: calc(var(--radius) - 4px);
34
+
35
+ --animate-accordion-down: accordion-down 0.2s ease-out;
36
+ --animate-accordion-up: accordion-up 0.2s ease-out;
37
+
38
+ @keyframes accordion-down {
39
+ from {
40
+ height: 0;
41
+ }
42
+ to {
43
+ height: var(--radix-accordion-content-height);
44
+ }
45
+ }
46
+ @keyframes accordion-up {
47
+ from {
48
+ height: var(--radix-accordion-content-height);
49
+ }
50
+ to {
51
+ height: 0;
52
+ }
53
+ }
54
+ }
55
+
56
+ @utility container {
57
+ margin-inline: auto;
58
+ padding-inline: 2rem;
59
+ @media (width >= 1400px) {
60
+ max-width: 1400px;
61
+ }
62
+ }
63
+
64
+ @layer base {
65
+ *,
66
+ ::after,
67
+ ::before,
68
+ ::backdrop,
69
+ ::file-selector-button {
70
+ border-color: var(--color-gray-200, currentColor);
71
+ }
72
+ }
73
+
74
+ @layer base {
75
+ :root {
76
+ --background: 0 0% 100%;
77
+ --foreground: 222.2 84% 4.9%;
78
+ --card: 0 0% 100%;
79
+ --card-foreground: 222.2 84% 4.9%;
80
+ --popover: 0 0% 100%;
81
+ --popover-foreground: 222.2 84% 4.9%;
82
+ --primary: 222.2 47.4% 11.2%;
83
+ --primary-foreground: 210 40% 98%;
84
+ --secondary: 210 40% 96.1%;
85
+ --secondary-foreground: 222.2 47.4% 11.2%;
86
+ --muted: 210 40% 96.1%;
87
+ --muted-foreground: 215.4 16.3% 46.9%;
88
+ --accent: 210 40% 96.1%;
89
+ --accent-foreground: 222.2 47.4% 11.2%;
90
+ --destructive: 0 84.2% 60.2%;
91
+ --destructive-foreground: 210 40% 98%;
92
+ --border: 214.3 31.8% 91.4%;
93
+ --input: 214.3 31.8% 91.4%;
94
+ --ring: 222.2 84% 4.9%;
95
+ --radius: 0.5rem;
96
+ }
97
+
98
+ .dark {
99
+ --background: 222.2 84% 4.9%;
100
+ --foreground: 210 40% 98%;
101
+ --card: 222.2 84% 4.9%;
102
+ --card-foreground: 210 40% 98%;
103
+ --popover: 222.2 84% 4.9%;
104
+ --popover-foreground: 210 40% 98%;
105
+ --primary: 210 40% 98%;
106
+ --primary-foreground: 222.2 47.4% 11.2%;
107
+ --secondary: 217.2 32.6% 17.5%;
108
+ --secondary-foreground: 210 40% 98%;
109
+ --muted: 217.2 32.6% 17.5%;
110
+ --muted-foreground: 215 20.2% 65.1%;
111
+ --accent: 217.2 32.6% 17.5%;
112
+ --accent-foreground: 210 40% 98%;
113
+ --destructive: 0 62.8% 30.6%;
114
+ --destructive-foreground: 210 40% 98%;
115
+ --border: 217.2 32.6% 17.5%;
116
+ --input: 217.2 32.6% 17.5%;
117
+ --ring: 212.7 26.8% 83.9%;
118
+ }
119
+ }
120
+
121
+ @layer base {
122
+ * {
123
+ @apply border-border;
124
+ }
125
+ body {
126
+ @apply bg-background text-foreground;
127
+ }
128
+ }
129
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arkitect-ui/cli",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "description": "CLI tool managing components for Arkitect-UI",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,129 @@
1
+ @import "tailwindcss";
2
+
3
+ @theme {
4
+ --color-border: hsl(var(--border));
5
+ --color-input: hsl(var(--input));
6
+ --color-ring: hsl(var(--ring));
7
+ --color-background: hsl(var(--background));
8
+ --color-foreground: hsl(var(--foreground));
9
+
10
+ --color-primary: hsl(var(--primary));
11
+ --color-primary-foreground: hsl(var(--primary-foreground));
12
+
13
+ --color-secondary: hsl(var(--secondary));
14
+ --color-secondary-foreground: hsl(var(--secondary-foreground));
15
+
16
+ --color-destructive: hsl(var(--destructive));
17
+ --color-destructive-foreground: hsl(var(--destructive-foreground));
18
+
19
+ --color-muted: hsl(var(--muted));
20
+ --color-muted-foreground: hsl(var(--muted-foreground));
21
+
22
+ --color-accent: hsl(var(--accent));
23
+ --color-accent-foreground: hsl(var(--accent-foreground));
24
+
25
+ --color-popover: hsl(var(--popover));
26
+ --color-popover-foreground: hsl(var(--popover-foreground));
27
+
28
+ --color-card: hsl(var(--card));
29
+ --color-card-foreground: hsl(var(--card-foreground));
30
+
31
+ --radius-lg: var(--radius);
32
+ --radius-md: calc(var(--radius) - 2px);
33
+ --radius-sm: calc(var(--radius) - 4px);
34
+
35
+ --animate-accordion-down: accordion-down 0.2s ease-out;
36
+ --animate-accordion-up: accordion-up 0.2s ease-out;
37
+
38
+ @keyframes accordion-down {
39
+ from {
40
+ height: 0;
41
+ }
42
+ to {
43
+ height: var(--radix-accordion-content-height);
44
+ }
45
+ }
46
+ @keyframes accordion-up {
47
+ from {
48
+ height: var(--radix-accordion-content-height);
49
+ }
50
+ to {
51
+ height: 0;
52
+ }
53
+ }
54
+ }
55
+
56
+ @utility container {
57
+ margin-inline: auto;
58
+ padding-inline: 2rem;
59
+ @media (width >= 1400px) {
60
+ max-width: 1400px;
61
+ }
62
+ }
63
+
64
+ @layer base {
65
+ *,
66
+ ::after,
67
+ ::before,
68
+ ::backdrop,
69
+ ::file-selector-button {
70
+ border-color: var(--color-gray-200, currentColor);
71
+ }
72
+ }
73
+
74
+ @layer base {
75
+ :root {
76
+ --background: 0 0% 100%;
77
+ --foreground: 222.2 84% 4.9%;
78
+ --card: 0 0% 100%;
79
+ --card-foreground: 222.2 84% 4.9%;
80
+ --popover: 0 0% 100%;
81
+ --popover-foreground: 222.2 84% 4.9%;
82
+ --primary: 222.2 47.4% 11.2%;
83
+ --primary-foreground: 210 40% 98%;
84
+ --secondary: 210 40% 96.1%;
85
+ --secondary-foreground: 222.2 47.4% 11.2%;
86
+ --muted: 210 40% 96.1%;
87
+ --muted-foreground: 215.4 16.3% 46.9%;
88
+ --accent: 210 40% 96.1%;
89
+ --accent-foreground: 222.2 47.4% 11.2%;
90
+ --destructive: 0 84.2% 60.2%;
91
+ --destructive-foreground: 210 40% 98%;
92
+ --border: 214.3 31.8% 91.4%;
93
+ --input: 214.3 31.8% 91.4%;
94
+ --ring: 222.2 84% 4.9%;
95
+ --radius: 0.5rem;
96
+ }
97
+
98
+ .dark {
99
+ --background: 222.2 84% 4.9%;
100
+ --foreground: 210 40% 98%;
101
+ --card: 222.2 84% 4.9%;
102
+ --card-foreground: 210 40% 98%;
103
+ --popover: 222.2 84% 4.9%;
104
+ --popover-foreground: 210 40% 98%;
105
+ --primary: 210 40% 98%;
106
+ --primary-foreground: 222.2 47.4% 11.2%;
107
+ --secondary: 217.2 32.6% 17.5%;
108
+ --secondary-foreground: 210 40% 98%;
109
+ --muted: 217.2 32.6% 17.5%;
110
+ --muted-foreground: 215 20.2% 65.1%;
111
+ --accent: 217.2 32.6% 17.5%;
112
+ --accent-foreground: 210 40% 98%;
113
+ --destructive: 0 62.8% 30.6%;
114
+ --destructive-foreground: 210 40% 98%;
115
+ --border: 217.2 32.6% 17.5%;
116
+ --input: 217.2 32.6% 17.5%;
117
+ --ring: 212.7 26.8% 83.9%;
118
+ }
119
+ }
120
+
121
+ @layer base {
122
+ * {
123
+ @apply border-border;
124
+ }
125
+ body {
126
+ @apply bg-background text-foreground;
127
+ }
128
+ }
129
+