@vibeframe/cli 0.91.4 → 0.91.7

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/index.js +23 -4
  2. package/package.json +5 -4
package/dist/index.js CHANGED
@@ -31969,7 +31969,10 @@ async function promptMultiSelect(_question, options, defaultSelected = [], opts
31969
31969
  if (finished) return;
31970
31970
  if (char === "\r" || char === "\n") {
31971
31971
  if (pickFocused && !userToggled) {
31972
- for (let i = 0; i < selected.length; i++) selected[i] = false;
31972
+ const hasDefaultSelection = selected.some(Boolean);
31973
+ if (!opts.preserveDefaultSelectionOnEnter || !hasDefaultSelection) {
31974
+ for (let i = 0; i < selected.length; i++) selected[i] = false;
31975
+ }
31973
31976
  selected[cursor] = true;
31974
31977
  render();
31975
31978
  }
@@ -62959,7 +62962,7 @@ init_source();
62959
62962
  // package.json
62960
62963
  var package_default = {
62961
62964
  name: "@vibeframe/cli",
62962
- version: "0.91.4",
62965
+ version: "0.91.7",
62963
62966
  description: "VibeFrame CLI - natural language video editing from the terminal",
62964
62967
  private: false,
62965
62968
  license: "MIT",
@@ -63123,6 +63126,7 @@ var package_default = {
63123
63126
  start: "tsx src/index.ts",
63124
63127
  lint: "eslint --ext .ts,.tsx src/",
63125
63128
  test: "vitest",
63129
+ pretest: "node build.js",
63126
63130
  prepublishOnly: "node build.js"
63127
63131
  },
63128
63132
  dependencies: {
@@ -70149,6 +70153,19 @@ function applyProviderDefault(config2, choice) {
70149
70153
  config2.defaults.videoProvider = choice.defaultFor.value;
70150
70154
  }
70151
70155
  }
70156
+ function isProviderChoiceConfigured(config2, choice) {
70157
+ if (choice.key) {
70158
+ const value = config2.providers[choice.key.configKey];
70159
+ if (value) return true;
70160
+ }
70161
+ if (choice.defaultFor?.kind === "image") {
70162
+ return config2.defaults.imageProvider === choice.defaultFor.value;
70163
+ }
70164
+ if (choice.defaultFor?.kind === "video") {
70165
+ return config2.defaults.videoProvider === choice.defaultFor.value;
70166
+ }
70167
+ return false;
70168
+ }
70152
70169
  function mergeSelectedFeatures(current, next) {
70153
70170
  const merged = [...current];
70154
70171
  for (const feature of next) {
@@ -70381,7 +70398,9 @@ async function runAIFeaturesSetup(config2, _scope) {
70381
70398
  console.log(source_default.dim(` Alternatives: ${feature.alsoAvailable}`));
70382
70399
  }
70383
70400
  console.log();
70384
- const defaultSelected = feature.providerChoices.map(() => false);
70401
+ const defaultSelected = feature.providerChoices.map(
70402
+ (choice) => isProviderChoiceConfigured(config2, choice)
70403
+ );
70385
70404
  const providerLabels = feature.providerChoices.map((choice) => {
70386
70405
  const keyHint = choice.keyless ? source_default.dim("no key") : choice.key ? source_default.dim(choice.key.envVar) : source_default.dim("no key");
70387
70406
  const defaultHint = choice === feature.providerChoices?.[0] ? source_default.dim("recommended default") : "";
@@ -70396,7 +70415,7 @@ async function runAIFeaturesSetup(config2, _scope) {
70396
70415
  source_default.cyan(" Providers (arrow + enter picks one, space adds more): "),
70397
70416
  providerLabels,
70398
70417
  defaultSelected,
70399
- { pickFocusedOnEnter: true }
70418
+ { pickFocusedOnEnter: true, preserveDefaultSelectionOnEnter: true }
70400
70419
  );
70401
70420
  const selectedChoices = pickedProviders.map((i) => feature.providerChoices[i]);
70402
70421
  const defaultChoice = selectedChoices.find((choice) => choice.defaultFor);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibeframe/cli",
3
- "version": "0.91.4",
3
+ "version": "0.91.7",
4
4
  "description": "VibeFrame CLI - natural language video editing from the terminal",
5
5
  "private": false,
6
6
  "license": "MIT",
@@ -183,8 +183,8 @@
183
183
  "tsx": "^4.21.0",
184
184
  "typescript": "^5.3.3",
185
185
  "vitest": "^1.2.2",
186
- "@vibeframe/ai-providers": "0.91.4",
187
- "@vibeframe/core": "0.91.4"
186
+ "@vibeframe/ai-providers": "0.91.7",
187
+ "@vibeframe/core": "0.91.7"
188
188
  },
189
189
  "engines": {
190
190
  "node": ">=20"
@@ -195,6 +195,7 @@
195
195
  "dev": "tsc --watch",
196
196
  "start": "tsx src/index.ts",
197
197
  "lint": "eslint --ext .ts,.tsx src/",
198
- "test": "vitest"
198
+ "test": "vitest",
199
+ "pretest": "node build.js"
199
200
  }
200
201
  }