@wix/ditto-codegen-public 1.0.289 → 1.0.290

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.
Files changed (2) hide show
  1. package/dist/out.js +40 -3
  2. package/package.json +2 -2
package/dist/out.js CHANGED
@@ -11552,6 +11552,7 @@ var require_constants5 = __commonJS({
11552
11552
  exports2.detectExtension = detectExtension;
11553
11553
  exports2.toTitleCase = toTitleCase;
11554
11554
  exports2.extractExtensionName = extractExtensionName;
11555
+ exports2.injectCreatedBy = injectCreatedBy;
11555
11556
  exports2.getWrittenContent = getWrittenContent;
11556
11557
  var ditto_codegen_types_12 = require_dist4();
11557
11558
  exports2.CONTAINER_ROOT_PREFIX = /^\/user-code\//;
@@ -11625,6 +11626,18 @@ var require_constants5 = __commonJS({
11625
11626
  const folderName = parts[parts.length - 2] || "";
11626
11627
  return toTitleCase(folderName);
11627
11628
  }
11629
+ function injectCreatedBy(content) {
11630
+ if (content.includes("createdBy"))
11631
+ return content;
11632
+ return content.replace(/(\S)(\n)(}\))(;?\s*)$/, (_match, preChar, newline, closeBrace, tail) => {
11633
+ const needsComma = preChar !== "," && preChar !== "{";
11634
+ const separator = needsComma ? `${preChar},` : preChar;
11635
+ return `${separator}${newline} createdBy: {
11636
+ author: "CODE_GEN",
11637
+ },
11638
+ ${closeBrace}${tail}`;
11639
+ });
11640
+ }
11628
11641
  function getWrittenContent(tool, state) {
11629
11642
  if (!state.input)
11630
11643
  return null;
@@ -12186,6 +12199,8 @@ var require_extension_handler = __commonJS({
12186
12199
  "use strict";
12187
12200
  Object.defineProperty(exports2, "__esModule", { value: true });
12188
12201
  exports2.ExtensionTaskHandler = void 0;
12202
+ var promises_1 = require("fs/promises");
12203
+ var path_1 = require("path");
12189
12204
  var ditto_codegen_types_12 = require_dist4();
12190
12205
  var codeGenerationService_12 = require_codeGenerationService();
12191
12206
  var logger_12 = require_logger();
@@ -12208,6 +12223,7 @@ var require_extension_handler = __commonJS({
12208
12223
  const extension = (0, constants_1.detectExtension)(content);
12209
12224
  if (!extension)
12210
12225
  return;
12226
+ await this.ensureCreatedBy(filePath, ctx.workingDirectory);
12211
12227
  const normalizedPath = (0, constants_1.normalizeFilePath)(filePath);
12212
12228
  if (this.extensionTasksCreated.has(normalizedPath))
12213
12229
  return;
@@ -12215,6 +12231,25 @@ var require_extension_handler = __commonJS({
12215
12231
  await this.completeInitTask(ctx);
12216
12232
  await this.createExtensionTask(normalizedPath, extension.label, filePath, ctx);
12217
12233
  }
12234
+ /** Reads an extension file from disk and injects createdBy if missing. */
12235
+ async ensureCreatedBy(filePath, workingDirectory) {
12236
+ const fullPath = (0, path_1.isAbsolute)(filePath) ? filePath : (0, path_1.join)(workingDirectory, filePath);
12237
+ try {
12238
+ const original = await (0, promises_1.readFile)(fullPath, "utf-8");
12239
+ const updated = (0, constants_1.injectCreatedBy)(original);
12240
+ if (updated !== original) {
12241
+ await (0, promises_1.writeFile)(fullPath, updated, "utf-8");
12242
+ logger_12.logger.info("[OpenCode] Injected createdBy into extension file", {
12243
+ filePath
12244
+ });
12245
+ }
12246
+ } catch (error) {
12247
+ logger_12.logger.error("[OpenCode] Failed to inject createdBy", {
12248
+ filePath,
12249
+ error: error instanceof Error ? error.message : String(error)
12250
+ });
12251
+ }
12252
+ }
12218
12253
  /** Completes the INIT_CODEGEN task once the extension tasks are created. */
12219
12254
  async completeInitTask(ctx) {
12220
12255
  const { store } = ctx;
@@ -12345,7 +12380,7 @@ var require_task_tracker = __commonJS({
12345
12380
  var extension_handler_1 = require_extension_handler();
12346
12381
  var category_handler_1 = require_category_handler();
12347
12382
  var OpenCodeTaskTracker = class {
12348
- constructor() {
12383
+ constructor(workingDirectory) {
12349
12384
  this.trackedTasks = /* @__PURE__ */ new Map();
12350
12385
  this.taskCounter = 0;
12351
12386
  this.collectedFiles = [];
@@ -12353,6 +12388,7 @@ var require_task_tracker = __commonJS({
12353
12388
  this.extensionHandler = new extension_handler_1.ExtensionTaskHandler();
12354
12389
  this.categoryHandler = new category_handler_1.CategoryTaskHandler();
12355
12390
  this.store = job_context_storage_12.jobContextStorage.getStore();
12391
+ this.workingDirectory = workingDirectory;
12356
12392
  }
12357
12393
  getSkillsUsed() {
12358
12394
  return Array.from(this.skillsUsed);
@@ -12372,7 +12408,8 @@ var require_task_tracker = __commonJS({
12372
12408
  store: this.store,
12373
12409
  trackedTasks: this.trackedTasks,
12374
12410
  collectedFiles: this.collectedFiles,
12375
- taskCounter: this.taskCounter
12411
+ taskCounter: this.taskCounter,
12412
+ workingDirectory: this.workingDirectory
12376
12413
  };
12377
12414
  }
12378
12415
  async processLine(line) {
@@ -12808,7 +12845,7 @@ var require_executor = __commonJS({
12808
12845
  async function executeOpenCodeOnce(options, attempt) {
12809
12846
  const { prompt, outputPath, projectId, onStdout, onStderr } = options;
12810
12847
  const startTime = Date.now();
12811
- const taskTracker = new task_tracker_1.OpenCodeTaskTracker();
12848
+ const taskTracker = new task_tracker_1.OpenCodeTaskTracker(outputPath);
12812
12849
  return new Promise((resolve) => {
12813
12850
  const state = {
12814
12851
  stdout: "",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/ditto-codegen-public",
3
- "version": "1.0.289",
3
+ "version": "1.0.290",
4
4
  "description": "AI-powered Wix CLI app generator - standalone executable",
5
5
  "scripts": {
6
6
  "build": "node build.mjs",
@@ -27,5 +27,5 @@
27
27
  "@wix/ditto-codegen": "1.0.0",
28
28
  "esbuild": "^0.27.2"
29
29
  },
30
- "falconPackageHash": "bb08ee9c7e969e69ea38701891166f003b901a43cec3f34e1276f843"
30
+ "falconPackageHash": "17f19685a652e4c3b3d509a30f412f378e89916cf064254b3ed38497"
31
31
  }