sbuilder-mcp 0.68.0 → 0.70.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/CHANGELOG.md +21 -0
- package/CHANGELOG.vi.md +21 -0
- package/README.md +1 -1
- package/README.vi.md +1 -1
- package/dist/catalog/api.generated.js +1 -1
- package/dist/catalog/deadkeys.generated.js +1 -1
- package/dist/catalog/overlays.generated.js +3 -3
- package/dist/catalog/search.js +5 -1
- package/dist/catalog/shapes.generated.js +927 -39
- package/dist/catalog/source.generated.js +2 -2
- package/dist/domains/site/cartlang.js +15 -0
- package/dist/domains/site/readiness.js +10 -1
- package/dist/tools/chrome.js +3 -1
- package/dist/tools/overlay.js +23 -14
- package/dist/tools/store.js +115 -18
- package/dist/transport/media.js +13 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,27 @@ All notable changes to this project are documented in this file.
|
|
|
6
6
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
7
7
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
8
8
|
|
|
9
|
+
## [0.70.0] - 2026-09-26
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- `sb_review` warns once per site (`cartDrawerThumbnail`) when a cart drawer seeded before the platform fixed its seed renders a line's thumbnail as a gallery (feature image plus a thumbs strip) squeezed into a 64px line, and `sb_store` action `cart` with `relocalize: true` now also fixes it, setting that thumbnail to a single image through the open page's save.
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
- `sb_store` action `cart`'s `relocalize` no longer requires `settings.locale` to be set when the only thing left to fix is a gallery thumbnail; it still refuses when there is neither a locale word nor a thumbnail to relocalize.
|
|
16
|
+
|
|
17
|
+
## [0.69.0] - 2026-09-26
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
- `sb_store` gains action `checkout_sync`, which re-reads a store's current payment gateways and shipping methods into every existing order form (keeping each method's own label) and republishes the checkout pages, for when a gateway or shipping method is added after the checkout was built and the form's select is left pointing at stale options.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
- The generated catalog was regenerated against the platform (`web_builder` `a3a735283`): a cart-line's image now catalogs as a single thumbnail instead of a bottom strip, and a category's derived `slug` is now catalogued.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
- The catalog generator was dropping every Go field that carried a trailing line comment, silently hiding `slug`, `parentId`, and `position` on categories and `description`, `images`, `attributes`, and `variants[].priceCents` on products from the catalog; `sb_api_find` also now reports a described body for `POST /api/sites` instead of `undescribed`.
|
|
27
|
+
- `sb_media_upload` and the store's own upload path now read the uploaded file's URL from the response's top-level `url` when the asset entry itself carries none, instead of reporting every successful upload as having no URL.
|
|
28
|
+
- `sb_store` action `chrome` now builds a footer whenever its columns carry two or more links in total, instead of skipping it whenever every individual column holds fewer than two — a footer with two columns of one link each was rendered empty.
|
|
29
|
+
|
|
9
30
|
## [0.68.0] - 2026-09-25
|
|
10
31
|
|
|
11
32
|
### Changed
|
package/CHANGELOG.vi.md
CHANGED
|
@@ -6,6 +6,27 @@ Mọi thay đổi đáng chú ý của dự án được ghi lại trong file n
|
|
|
6
6
|
Định dạng dựa trên [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
7
7
|
và dự án tuân theo [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
8
8
|
|
|
9
|
+
## [0.70.0] - 2026-09-26
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- `sb_review` cảnh báo một lần cho mỗi site (`cartDrawerThumbnail`) khi cart drawer được gieo trước khi nền tảng sửa lại seed hiện thumbnail của một line dưới dạng gallery (ảnh chính cộng dải ảnh thu nhỏ) bị nhồi vào một line cao 64px, và action `cart` của `sb_store` với `relocalize: true` giờ cũng sửa luôn, đặt thumbnail đó thành một ảnh duy nhất thông qua lần lưu của trang đang mở.
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
- `relocalize` của action `cart` trong `sb_store` không còn yêu cầu `settings.locale` phải được đặt khi thứ duy nhất cần sửa là thumbnail dạng gallery; nó vẫn từ chối khi không có cả từ ngôn ngữ lẫn thumbnail nào cần relocalize.
|
|
16
|
+
|
|
17
|
+
## [0.69.0] - 2026-09-26
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
- `sb_store` có thêm action `checkout_sync`, đọc lại các cổng thanh toán và phương thức giao hàng hiện tại của store rồi ghi vào mọi order form đang có (giữ nguyên label riêng của từng phương thức) và republish lại các trang checkout, dùng cho trường hợp một gateway hay phương thức giao hàng được thêm sau khi checkout đã được dựng, khiến select trong form vẫn trỏ vào các tùy chọn cũ.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
- Catalog được sinh ra đã được làm mới dựa trên nền tảng (`web_builder` `a3a735283`): ảnh của cart line giờ được catalog là một thumbnail duy nhất thay vì một dải ảnh phía dưới, và `slug` suy ra của category giờ cũng được catalog.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
- Bộ sinh catalog trước đây bỏ rơi mọi field Go có comment cuối dòng, âm thầm làm mất `slug`, `parentId`, `position` của category và `description`, `images`, `attributes`, `variants[].priceCents` của product khỏi catalog; `sb_api_find` giờ cũng báo body của `POST /api/sites` là "described" thay vì "undescribed".
|
|
27
|
+
- `sb_media_upload` và đường upload riêng của store giờ đọc URL của file đã tải lên từ trường `url` ở cấp cao nhất của response khi bản thân asset không mang URL, thay vì báo mọi lần upload thành công là không có URL.
|
|
28
|
+
- Action `chrome` của `sb_store` giờ dựng footer bất cứ khi nào tổng số link trên các cột đạt từ hai trở lên, thay vì bỏ qua khi mỗi cột riêng lẻ có ít hơn hai link — một footer có hai cột mỗi cột một link trước đây bị dựng trống.
|
|
29
|
+
|
|
9
30
|
## [0.68.0] - 2026-09-25
|
|
10
31
|
|
|
11
32
|
### Changed
|
package/README.md
CHANGED
|
@@ -111,7 +111,7 @@ in this client: one would put the very key the platform exists to hold back into
|
|
|
111
111
|
| `sb_import` | Read a page from any public URL and add its structure and content to the open page as real elements, styled with THIS page's own tokens — a translation, not a clone |
|
|
112
112
|
| `sb_import_site` | Read a WHOLE site from one URL — its sitemap, or the links on that page — and give each page found its own draft page here, built from this site's tokens; the entry page's own colours and type scale also patch into this SITE'S theme, so it stops being purely a read |
|
|
113
113
|
| `sb_theme` | Read or patch the site's palette and type scale — the layer every style preset resolves from, so one token repaints every page; `locale` sets the site's language |
|
|
114
|
-
| `sb_store` | Run a store flow that must happen in a fixed order — `checkout` (the four writes that make a working one), `form` (any of the platform's 17 templates with its own field document), `chrome` (one shared header or footer on a real site menu — desktop menu, mobile drawer, cart and account icons), `menu` (a menu node bound to the site's menu, its links resolved), `overlay_attach` (a pop-up or quick view on the open page), `cart` (the site's cart drawer, when it has none; `relocalize` puts an existing one in the site's language) and `app` (a built-in app plus the pages it needs), `global_attach` / `global_detach` (put an EXISTING shared section on the open page, or take it off) |
|
|
114
|
+
| `sb_store` | Run a store flow that must happen in a fixed order — `checkout` (the four writes that make a working one), `checkout_sync` (the store's current payment and delivery methods into every existing order form, checkout page republished), `form` (any of the platform's 17 templates with its own field document), `chrome` (one shared header or footer on a real site menu — desktop menu, mobile drawer, cart and account icons), `menu` (a menu node bound to the site's menu, its links resolved), `overlay_attach` (a pop-up or quick view on the open page), `cart` (the site's cart drawer, when it has none; `relocalize` puts an existing one in the site's language) and `app` (a built-in app plus the pages it needs), `global_attach` / `global_detach` (put an EXISTING shared section on the open page, or take it off) |
|
|
115
115
|
| `sb_undo` | Put back what a PUT replaced. The SECOND answer for a page, not the only one: the platform has versions, history and restore (`sb_api_find` "page versions"), which outlive this process — reach for those first and use this for every other shaped PUT |
|
|
116
116
|
|
|
117
117
|
Twenty-eight tools, **574 API operations** (197 of the 255 writes carrying a body shape read
|
package/README.vi.md
CHANGED
|
@@ -108,7 +108,7 @@ nhét ngược lại vào mọi bản cài.
|
|
|
108
108
|
| `sb_import` | Đọc một trang từ URL công khai bất kỳ và thêm cấu trúc + nội dung của nó vào trang đang mở dưới dạng element thật, mang token của CHÍNH trang này — là dịch lại, không phải sao chép |
|
|
109
109
|
| `sb_import_site` | Đọc CẢ website từ một URL — sitemap của nó, hoặc các link trên trang đó — và tạo cho mỗi trang tìm được một trang nháp riêng ở đây, dựng bằng token của site này; màu và thang chữ của trang gốc cũng được vá vào THEME của site này, nên đây không còn thuần là đọc |
|
|
110
110
|
| `sb_theme` | Đọc hoặc vá bảng màu và thang chữ của site — tầng mà mọi style preset phân giải từ đó, nên một token thay áo cho mọi trang; `locale` đặt ngôn ngữ của site |
|
|
111
|
-
| `sb_store` | Chạy một luồng cửa hàng bắt buộc đúng thứ tự — `checkout` (bốn lệnh ghi tạo nên trang thanh toán), `form` (một trong 17 template của nền tảng kèm field document của nó), `chrome` (một header hoặc footer dùng chung trên menu thật của site — menu desktop, drawer mobile, icon giỏ hàng và tài khoản), `menu` (một node menu bind vào menu của site, link đã phân giải), `overlay_attach` (một pop-up hay quick view trên trang đang mở), `cart` (ngăn giỏ hàng của site, khi chưa có; `relocalize` đưa ngăn giỏ đã có về ngôn ngữ của site), `app` (một app dựng sẵn kèm những trang nó cần), và `global_attach` / `global_detach` (đặt một section dùng chung ĐÃ CÓ lên trang đang mở, hoặc gỡ ra) |
|
|
111
|
+
| `sb_store` | Chạy một luồng cửa hàng bắt buộc đúng thứ tự — `checkout` (bốn lệnh ghi tạo nên trang thanh toán), `checkout_sync` (đưa phương thức thanh toán và giao hàng hiện tại vào mọi form đặt hàng đã có, publish lại trang thanh toán), `form` (một trong 17 template của nền tảng kèm field document của nó), `chrome` (một header hoặc footer dùng chung trên menu thật của site — menu desktop, drawer mobile, icon giỏ hàng và tài khoản), `menu` (một node menu bind vào menu của site, link đã phân giải), `overlay_attach` (một pop-up hay quick view trên trang đang mở), `cart` (ngăn giỏ hàng của site, khi chưa có; `relocalize` đưa ngăn giỏ đã có về ngôn ngữ của site), `app` (một app dựng sẵn kèm những trang nó cần), và `global_attach` / `global_detach` (đặt một section dùng chung ĐÃ CÓ lên trang đang mở, hoặc gỡ ra) |
|
|
112
112
|
| `sb_undo` | Trả lại thứ mà một lệnh PUT đã ghi đè. Với TRANG thì đây là đường về thứ hai chứ không phải duy nhất: nền tảng có version, history và restore (`sb_api_find` "page versions"), và chúng sống lâu hơn tiến trình này — hãy dùng chúng trước, còn tool này cho mọi PUT có hình dạng khác |
|
|
113
113
|
|
|
114
114
|
Hai mươi tám tool, **574 operation API** (197 trong 255 lệnh ghi có hình dạng body đọc thẳng
|
|
@@ -18953,7 +18953,7 @@ export const API_DEFINITIONS = {
|
|
|
18953
18953
|
"type": "string"
|
|
18954
18954
|
},
|
|
18955
18955
|
"slug": {
|
|
18956
|
-
"description": "unique per (siteId, slug) within its own type",
|
|
18956
|
+
"description": "unique per (siteId, slug) within its own type; derived from Name when empty on create",
|
|
18957
18957
|
"type": "string"
|
|
18958
18958
|
},
|
|
18959
18959
|
"updatedAt": {
|
|
@@ -277,7 +277,7 @@ export const OVERLAY_SEEDS = {
|
|
|
277
277
|
"alt": ""
|
|
278
278
|
}
|
|
279
279
|
],
|
|
280
|
-
"layout": "
|
|
280
|
+
"layout": "single",
|
|
281
281
|
"activeIndex": 0
|
|
282
282
|
},
|
|
283
283
|
"specials": {},
|
|
@@ -2317,7 +2317,7 @@ export const CART_SEEDS = {
|
|
|
2317
2317
|
"alt": ""
|
|
2318
2318
|
}
|
|
2319
2319
|
],
|
|
2320
|
-
"layout": "
|
|
2320
|
+
"layout": "single",
|
|
2321
2321
|
"activeIndex": 0
|
|
2322
2322
|
},
|
|
2323
2323
|
"specials": {},
|
|
@@ -3151,7 +3151,7 @@ export const CART_SEEDS = {
|
|
|
3151
3151
|
"alt": ""
|
|
3152
3152
|
}
|
|
3153
3153
|
],
|
|
3154
|
-
"layout": "
|
|
3154
|
+
"layout": "single",
|
|
3155
3155
|
"activeIndex": 0
|
|
3156
3156
|
},
|
|
3157
3157
|
"specials": {},
|
package/dist/catalog/search.js
CHANGED
|
@@ -458,7 +458,11 @@ export function summarizeOperation(op) {
|
|
|
458
458
|
out.summary_shared = true;
|
|
459
459
|
// A copied body is not this route's, so the line says nothing rather than
|
|
460
460
|
// `described` — see `copiedBodyDonor`.
|
|
461
|
-
|
|
461
|
+
// The handler's own decode outranks the document, as it does on the call sheet;
|
|
462
|
+
// without this the line said `undescribed` for a body the sheet then described.
|
|
463
|
+
if (REQUEST_SHAPES[op.id])
|
|
464
|
+
out.body = 'described';
|
|
465
|
+
else if (hasBody && !copiedBodyDonor(op.id))
|
|
462
466
|
out.body = op.bodyDescribed && op.bodyRef ? 'described' : 'undescribed';
|
|
463
467
|
else if (isWrite)
|
|
464
468
|
out.body = 'none_declared';
|