marko 5.35.35 → 5.36.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.
Files changed (2) hide show
  1. package/docs/compiler.md +8 -3
  2. package/package.json +3 -3
package/docs/compiler.md CHANGED
@@ -206,12 +206,17 @@ Default: [environment based](https://github.com/marko-js/marko/blob/0f212897d2d3
206
206
 
207
207
  Enables production mode optimizations.
208
208
 
209
- #### `optimizeKnownTemplates`
209
+ #### `optimizeRegistryId`
210
210
 
211
- Type: `string[]`<br>
211
+ Type: `(request: string) => string | number`<br>
212
212
  Default: `undefined`
213
213
 
214
- If `optimize` is enabled you can provide an array of template paths which the compiler will use to generate shorter registry/template ids using incrementing ids. This can only be used if the same `optimizeKnownTemplates` are used for both server and client compilations.
214
+ If `optimize` is enabled this function will be called with each "template id" / "registry id" that Marko uses for hydration.
215
+ The function must return a number (which will be encoded) or a string which is used verbatim.
216
+
217
+ It is _required_ that when a template is compiled for the server it is given the same id when it is compiled for the browser.
218
+
219
+ Without this function Marko will use a generic hash of the raw `request` id.
215
220
 
216
221
  #### `resolveVirtualDependency`
217
222
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "marko",
3
- "version": "5.35.35",
3
+ "version": "5.36.0",
4
4
  "description": "UI Components + streaming, async, high performance, HTML templating for Node.js and the browser.",
5
5
  "keywords": [
6
6
  "front-end",
@@ -66,8 +66,8 @@
66
66
  "build": "babel ./src --out-dir ./dist --extensions .js --copy-files --config-file ../../babel.config.js --env-name=production"
67
67
  },
68
68
  "dependencies": {
69
- "@marko/compiler": "^5.37.26",
70
- "@marko/translator-default": "^6.0.26",
69
+ "@marko/compiler": "^5.38.0",
70
+ "@marko/translator-default": "^6.1.0",
71
71
  "app-module-path": "^2.2.0",
72
72
  "argly": "^1.2.0",
73
73
  "browser-refresh-client": "1.1.4",