smbls 3.14.849 → 3.14.851

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 (31) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/smbls.cjs +43 -43
  3. package/dist/smbls.cjs.map +2 -2
  4. package/dist/smbls.core.chunk-7MQ3HVJQ.esm.js +36 -0
  5. package/dist/smbls.core.chunk-7MQ3HVJQ.esm.js.map +1 -0
  6. package/dist/{smbls.core.chunk-7SZUGO5L.esm.js → smbls.core.chunk-CVRWUKGL.esm.js} +2 -2
  7. package/dist/smbls.core.chunk-ULA4ERZ5.esm.js +7 -0
  8. package/dist/{smbls.core.chunk-PJSRIWW6.esm.js.map → smbls.core.chunk-ULA4ERZ5.esm.js.map} +2 -2
  9. package/dist/{smbls.core.dropdown-WHTRDSTC.esm.js → smbls.core.dropdown-HEOMIEOB.esm.js} +2 -2
  10. package/dist/smbls.core.esm.js +1 -1
  11. package/dist/{smbls.core.fetch-MDXDXO47.esm.js → smbls.core.fetch-WPTPOQQO.esm.js} +2 -2
  12. package/dist/{smbls.core.inspect-2Y3VVWKT.esm.js → smbls.core.inspect-F77SHAOW.esm.js} +2 -2
  13. package/dist/{smbls.core.sync-CFCAWBC2.esm.js → smbls.core.sync-N3T6TKUT.esm.js} +2 -2
  14. package/dist/{smbls.core.windows-ICMSWA7V.esm.js → smbls.core.windows-PCONFBET.esm.js} +2 -2
  15. package/dist/smbls.esm.js +43 -43
  16. package/dist/smbls.esm.js.map +1 -1
  17. package/dist/smbls.iife-string.js +2 -2
  18. package/dist/smbls.iife.js +1 -1
  19. package/dist/smbls.iife.js.map +1 -1
  20. package/dist/smbls.server-utils.esm.js +6 -6
  21. package/dist/smbls.server-utils.esm.js.map +1 -1
  22. package/package.json +2 -2
  23. package/dist/smbls.core.chunk-DF7QFXYQ.esm.js +0 -36
  24. package/dist/smbls.core.chunk-DF7QFXYQ.esm.js.map +0 -1
  25. package/dist/smbls.core.chunk-PJSRIWW6.esm.js +0 -7
  26. /package/dist/{smbls.core.chunk-7SZUGO5L.esm.js.map → smbls.core.chunk-CVRWUKGL.esm.js.map} +0 -0
  27. /package/dist/{smbls.core.dropdown-WHTRDSTC.esm.js.map → smbls.core.dropdown-HEOMIEOB.esm.js.map} +0 -0
  28. /package/dist/{smbls.core.fetch-MDXDXO47.esm.js.map → smbls.core.fetch-WPTPOQQO.esm.js.map} +0 -0
  29. /package/dist/{smbls.core.inspect-2Y3VVWKT.esm.js.map → smbls.core.inspect-F77SHAOW.esm.js.map} +0 -0
  30. /package/dist/{smbls.core.sync-CFCAWBC2.esm.js.map → smbls.core.sync-N3T6TKUT.esm.js.map} +0 -0
  31. /package/dist/{smbls.core.windows-ICMSWA7V.esm.js.map → smbls.core.windows-PCONFBET.esm.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # smbls
2
2
 
3
+ ## 3.14.851
4
+
5
+ ### Patch Changes
6
+
7
+ - 2e9abb3: The three brender registry writers moved out of the `@symbo.ls/utils` index into a new server entry, `@symbo.ls/utils/server`: `brenderRegistryBlock`, `encodeBrenderRegistry`, `brenderRegistryTreeBlock`.
8
+
9
+ - Why: every `@symbo.ls/utils` index export is spread into `context.utils`, so the writers rode in every browser bundle (about 1.2 KB raw, 330 B Brotli) and no browser code calls them.
10
+ - `el.call('brenderRegistryBlock' | 'encodeBrenderRegistry' | 'brenderRegistryTreeBlock', …)` no longer reaches them, and `smbls` (which re-exports the utils index) no longer exports them.
11
+ - Server or build code that writes a registry: `import { brenderRegistryBlock, encodeBrenderRegistry, brenderRegistryTreeBlock } from '@symbo.ls/utils/server'` (ESM and CJS).
12
+ - The client half stays in the index: `BRENDER_REGISTRY_BLOCK`, `BRENDER_REGISTRY_TREE_BLOCK`, `decodeBrenderRegistry`, `readJsonDataBlock`, `jsonForScript`.
13
+ - `@symbo.ls/brender` imports the writers from the new entry, so it needs the `@symbo.ls/utils` release that ships `@symbo.ls/utils/server`. The pages it writes are byte-identical.
14
+
15
+ ## 3.14.850
16
+
17
+ ### Patch Changes
18
+
19
+ - 75fc737: Round 8, XMA ("on a slow desktop, data holds still"): the text of a page built ahead no longer falls back to the system font while the app takes the page over.
20
+
21
+ - Cause: Chrome makes new, unloaded `FontFace` objects when the style sheet that holds a page's `@font-face` rules changes. The takeover changed it twice. First, smbls inserted the framework's default `SourceSans` face, a face with no file (`src: ;`). Second, it removed the server's styles and copied their faces into a new `<style data-smbls-faces>`. Each time the text drew in the fallback font for one to three frames, and every text block changed size. Measured on a fixture page of 40 data blocks, desktop 1440 px, CPU 6x slower: 45,828 px of layout change in 2 frames with `build.prepareDesignSystem` on, 68,742 px in 3 frames with `{ shell: false, pages: false }`. Now 0 px in both, 4 of 4 runs.
22
+ - `@symbo.ls/brender` `renderPage` writes the page's `@font-face` rules in a `<style data-smbls-faces>` of their own, ahead of `<style data-brender>`. They are no longer in `<style data-emotion="smbls">`. The takeover does not select that sheet, so it stays for the page's life and keeps its faces loaded. `splitCapturedCSS` does not change.
23
+ - `smbls` `applyFontFaces` does not insert a face that names no file.
24
+ - A post-build step that moves the `@font-face` rules out of the server's styles finds none there now. It can leave `<style data-smbls-faces>` where it is.
25
+
3
26
  ## 3.14.849
4
27
 
5
28
  ### Patch Changes