vibespot 0.4.3 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/assets/conversion-guide.md +2 -2
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ AI-powered HubSpot CMS landing page builder — vibe coding & React converter.
|
|
|
8
8
|
|
|
9
9
|
> **Before you start:** vibeSpot's in-app setup will walk you through configuration, but for the smoothest experience, install your preferred AI engine and the HubSpot CLI **before** running vibeSpot. The onboarding flow is still being refined — having these tools ready avoids extra back-and-forth.
|
|
10
10
|
>
|
|
11
|
-
> **Requirements:** Node.js 18+, HubSpot CLI 8+ (`npm install -g @hubspot/cli@latest`). HubSpot CLI versions below 8 are **not supported** — deprecated commands like `hs create
|
|
11
|
+
> **Requirements:** Node.js 18+, HubSpot CLI 8+ (`npm install -g @hubspot/cli@latest`). HubSpot CLI versions below 8 are **not supported** — deprecated commands like `hs create` were removed in v8.
|
|
12
12
|
|
|
13
13
|
## What It Does
|
|
14
14
|
|
|
@@ -222,7 +222,7 @@ This is where React props become HubSpot-editable fields. Every piece of text, i
|
|
|
222
222
|
| `"name": "name"` | `missing field name` | `name` is reserved — use `item_name`, `link_label`, etc. |
|
|
223
223
|
| `{% module %}` in module.html | `'module' is disabled in this context` | Cannot nest modules — use `{% form %}` for forms |
|
|
224
224
|
| `{{ now() }}` | `Could not resolve function 'now'` | Use `{{ local_dt }}` for current date/time |
|
|
225
|
-
| Partially uploaded module | Re-upload still fails | Run `hs cms
|
|
225
|
+
| Partially uploaded module | Re-upload still fails | Run `hs cms delete <path>` first, then re-upload |
|
|
226
226
|
| SVG in text field | SVG renders as escaped text | SVG markup in text fields is auto-escaped by HubL |
|
|
227
227
|
|
|
228
228
|
### Image Fields
|
|
@@ -618,7 +618,7 @@ For backgrounds with transparency (e.g., glassmorphism cards):
|
|
|
618
618
|
|
|
619
619
|
**Cause**: Partially uploaded module with invalid `fields.json` is cached on HubSpot.
|
|
620
620
|
|
|
621
|
-
**Fix**: `hs cms
|
|
621
|
+
**Fix**: `hs cms delete my-theme/modules/MyModule.module` then re-upload.
|
|
622
622
|
|
|
623
623
|
### 5. Repeater Group Content Missing
|
|
624
624
|
|
package/dist/index.js
CHANGED
|
@@ -985,7 +985,7 @@ async function setupTheme() {
|
|
|
985
985
|
const s = await spinner2();
|
|
986
986
|
s.start("Creating theme from boilerplate...");
|
|
987
987
|
const cwdBefore = new Set(readdirSync3(process.cwd()));
|
|
988
|
-
const result = run(`hs cms create
|
|
988
|
+
const result = run(`hs cms theme create "${themeName}"`);
|
|
989
989
|
let createdAt = join5(process.cwd(), themeName);
|
|
990
990
|
if (!fileExists(createdAt)) {
|
|
991
991
|
const cwdAfter = readdirSync3(process.cwd());
|
|
@@ -999,7 +999,7 @@ async function setupTheme() {
|
|
|
999
999
|
const errMsg = result.stderr || result.stdout || "";
|
|
1000
1000
|
logError(
|
|
1001
1001
|
`Could not create theme "${themeName}".` + (errMsg ? `
|
|
1002
|
-
${errMsg.slice(0, 300)}` : "") + "\nTry running manually: hs cms create
|
|
1002
|
+
${errMsg.slice(0, 300)}` : "") + "\nTry running manually: hs cms theme create my-theme"
|
|
1003
1003
|
);
|
|
1004
1004
|
process.exit(1);
|
|
1005
1005
|
}
|
|
@@ -2816,7 +2816,7 @@ The theme may work \u2014 check HubSpot Design Manager.`
|
|
|
2816
2816
|
}
|
|
2817
2817
|
if (!anyFixed) {
|
|
2818
2818
|
s.start("Cleaning up stuck modules...");
|
|
2819
|
-
run(`hs cms
|
|
2819
|
+
run(`hs cms delete "${themeName}/modules"`, {
|
|
2820
2820
|
cwd: join12(themePath, "..")
|
|
2821
2821
|
});
|
|
2822
2822
|
s.stop("Cleaned up modules, retrying...");
|
|
@@ -5447,7 +5447,7 @@ function handleSetupCreateRoute(req, res) {
|
|
|
5447
5447
|
rmSync5(themePath, { recursive: true, force: true });
|
|
5448
5448
|
}
|
|
5449
5449
|
const cwdBefore = new Set(readdirSync11(process.cwd()));
|
|
5450
|
-
execSync4(`hs cms create
|
|
5450
|
+
execSync4(`hs cms theme create "${themeName}"`, {
|
|
5451
5451
|
encoding: "utf-8",
|
|
5452
5452
|
stdio: "pipe"
|
|
5453
5453
|
});
|
|
@@ -5737,7 +5737,7 @@ function handleSettingsHsAuthRoute(req, res) {
|
|
|
5737
5737
|
}
|
|
5738
5738
|
if (parsed.personalAccessKey) {
|
|
5739
5739
|
const jobId = startJob(
|
|
5740
|
-
`
|
|
5740
|
+
`hs auth --pak="${parsed.personalAccessKey}"`,
|
|
5741
5741
|
"Authenticating with HubSpot",
|
|
5742
5742
|
{ timeout: 3e4 }
|
|
5743
5743
|
);
|