smbls 3.14.827 → 3.14.829
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 +34 -0
- package/dist/smbls.cjs +44 -44
- package/dist/smbls.embed.iife.js +14 -14
- package/dist/smbls.esm.js +44 -44
- package/dist/smbls.iife-string.js +2 -2
- package/dist/smbls.iife.js +44 -44
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# smbls
|
|
2
2
|
|
|
3
|
+
## 3.14.829
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Fixes:
|
|
8
|
+
- frank: a declaration spelled inside a string literal (for example inside the inlined `smbls/iife-string`) no longer hides or replaces a real bundle binding — a canvas publish no longer blocks on `[unresolvable-identifier] globalScope.G`, and literal text no longer lands in globalScope values.
|
|
9
|
+
- utils (runtime): an arrow function emitted by frank < 3.14.827 reads its element again — old library payloads no longer throw `__scope.X is not a function` (docs.symbols.app `isViewNavRoute`). Only the exact old frank scope preamble in an arrow with an element parameter is rewritten.
|
|
10
|
+
- element: the "custom prop … is a function" dev warning stays quiet for minified code, `is*`/`has*` conditions and `routerOptions`, and fires once per declared function.
|
|
11
|
+
|
|
12
|
+
## 3.14.828
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- Server rendering is correct and fast, opt-in hydration, and Cloudflare deploys run the full build (FW-BRENDER-HYDRATION-AND-CF-DEPLOY-PROVIDER-1, FW-PUBLISH-TIME-PRERENDER-SSRCACHE-1).
|
|
17
|
+
|
|
18
|
+
Behaviour changes (check these first):
|
|
19
|
+
|
|
20
|
+
- `smbls build` copies `public/` into the output root (never replacing a file the bundler wrote), so `_redirects`, `_headers` and `404.html` ship with every bundler.
|
|
21
|
+
- Booting over a pre-rendered page removes only `style[data-emotion="smbls"]` and `style[data-brender]`; the host page's own `<style>` tags stay.
|
|
22
|
+
- The Cloudflare worker (`renderProjectHtml` without eval) keeps the client render instead of painting a wrong pre-render; a stored pre-render (`ssrCache` / `__ssr`) is still served. `ssrWithoutEval: true` opts back in.
|
|
23
|
+
|
|
24
|
+
Fixes:
|
|
25
|
+
|
|
26
|
+
- Every server render after the first one paints its theme colours again (linkedom made `deepClone` copy nothing nested).
|
|
27
|
+
- Server pages ship their own reset, keyframes and `:root` once, also in the Cloudflare worker (`generateGlobalCSS` read the wrong keys, wrote files and cached across projects).
|
|
28
|
+
- A pre-render waits for its own requests instead of a flat 2 s; server renders stop rescanning the head for every inserted rule.
|
|
29
|
+
- The server render gets the project's `globalScope` and context keys, as the client does; a `<select>` with a value no longer drops its parent.
|
|
30
|
+
|
|
31
|
+
New, opt-in:
|
|
32
|
+
|
|
33
|
+
- Hydration: `hydrate: true` (or `window.__BRENDER_HYDRATE__` from the server, with `__BR_REGISTRY__`) adopts the server DOM instead of replacing it; a mismatch falls back to a fresh node, a throw to the fresh render. brender `renderPage({ adoptDom })` ships the registry and the recorded GET answers; `@symbo.ls/fetch` exports `createEarlySeedScript`, `earlyKey`, `EARLY_KEY`.
|
|
34
|
+
- `smbls deploy --provider cloudflare [--target pages|workers] [--dry-run] [--no-brender]` runs the full `smbls build` pipeline; `--target workers` writes Workers Static Assets config.
|
|
35
|
+
- `smbls publish --ssr` (or `"prerender": true` in `symbols.json`) pre-renders every static route and stores it as `__ssr`, which the platform renderer serves; off by default.
|
|
36
|
+
|
|
3
37
|
## 3.14.827
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|