gazetta 0.1.4 → 0.3.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 (89) hide show
  1. package/admin-dist/assets/index-C-xOOPUK.js +604 -0
  2. package/admin-dist/assets/index-CKOOkleR.css +1 -0
  3. package/admin-dist/assets/rolldown-runtime-COnpUsM8.js +1 -0
  4. package/admin-dist/assets/vendor-primevue-BNJTiXAs.js +1670 -0
  5. package/admin-dist/assets/vendor-react-BipDVGow.js +9 -0
  6. package/admin-dist/assets/vendor-rjsf-HKBAjOmQ.js +32 -0
  7. package/admin-dist/assets/vendor-tiptap-IyO99U4R.js +142 -0
  8. package/admin-dist/assets/vendor-vue-GhBrpzPN.js +1 -0
  9. package/admin-dist/index.html +8 -7
  10. package/dist/admin-api/index.js +2 -2
  11. package/dist/admin-api/index.js.map +1 -1
  12. package/dist/admin-api/routes/compare.d.ts +4 -0
  13. package/dist/admin-api/routes/compare.d.ts.map +1 -0
  14. package/dist/admin-api/routes/compare.js +51 -0
  15. package/dist/admin-api/routes/compare.js.map +1 -0
  16. package/dist/admin-api/routes/fragments.d.ts.map +1 -1
  17. package/dist/admin-api/routes/fragments.js +3 -5
  18. package/dist/admin-api/routes/fragments.js.map +1 -1
  19. package/dist/admin-api/routes/pages.d.ts.map +1 -1
  20. package/dist/admin-api/routes/pages.js +3 -6
  21. package/dist/admin-api/routes/pages.js.map +1 -1
  22. package/dist/admin-api/routes/preview.js +4 -2
  23. package/dist/admin-api/routes/preview.js.map +1 -1
  24. package/dist/admin-api/routes/publish.d.ts.map +1 -1
  25. package/dist/admin-api/routes/publish.js +22 -3
  26. package/dist/admin-api/routes/publish.js.map +1 -1
  27. package/dist/cli/index.js +87 -47
  28. package/dist/cli/index.js.map +1 -1
  29. package/dist/compare.d.ts +37 -0
  30. package/dist/compare.d.ts.map +1 -0
  31. package/dist/compare.js +86 -0
  32. package/dist/compare.js.map +1 -0
  33. package/dist/hash.d.ts +16 -0
  34. package/dist/hash.d.ts.map +1 -0
  35. package/dist/hash.js +57 -0
  36. package/dist/hash.js.map +1 -0
  37. package/dist/index.d.ts +3 -4
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +3 -4
  40. package/dist/index.js.map +1 -1
  41. package/dist/manifest.d.ts +1 -2
  42. package/dist/manifest.d.ts.map +1 -1
  43. package/dist/manifest.js +40 -18
  44. package/dist/manifest.js.map +1 -1
  45. package/dist/publish-rendered.d.ts +3 -5
  46. package/dist/publish-rendered.d.ts.map +1 -1
  47. package/dist/publish-rendered.js +46 -14
  48. package/dist/publish-rendered.js.map +1 -1
  49. package/dist/publish.js +23 -22
  50. package/dist/publish.js.map +1 -1
  51. package/dist/resolver.d.ts +2 -2
  52. package/dist/resolver.d.ts.map +1 -1
  53. package/dist/resolver.js +50 -39
  54. package/dist/resolver.js.map +1 -1
  55. package/dist/scope.d.ts +0 -4
  56. package/dist/scope.d.ts.map +1 -1
  57. package/dist/scope.js +0 -5
  58. package/dist/scope.js.map +1 -1
  59. package/dist/site-loader.js +2 -2
  60. package/dist/targets.d.ts +0 -2
  61. package/dist/targets.d.ts.map +1 -1
  62. package/dist/targets.js +0 -4
  63. package/dist/targets.js.map +1 -1
  64. package/dist/template-loader.d.ts.map +1 -1
  65. package/dist/template-loader.js +10 -13
  66. package/dist/template-loader.js.map +1 -1
  67. package/dist/templates-scan-worker.d.ts +2 -0
  68. package/dist/templates-scan-worker.d.ts.map +1 -0
  69. package/dist/templates-scan-worker.js +42 -0
  70. package/dist/templates-scan-worker.js.map +1 -0
  71. package/dist/templates-scan.d.ts +35 -0
  72. package/dist/templates-scan.d.ts.map +1 -0
  73. package/dist/templates-scan.js +146 -0
  74. package/dist/templates-scan.js.map +1 -0
  75. package/dist/types.d.ts +10 -1
  76. package/dist/types.d.ts.map +1 -1
  77. package/dist/types.js.map +1 -1
  78. package/package.json +8 -8
  79. package/admin-dist/assets/index-41Z6lGTc.js +0 -617
  80. package/admin-dist/assets/index-Bny-fIrv.css +0 -1
  81. package/admin-dist/assets/vendor-primevue-zs1PFA6i.js +0 -1597
  82. package/admin-dist/assets/vendor-react-CqfEBl6C.js +0 -49
  83. package/admin-dist/assets/vendor-rjsf-Ci-RPpeZ.js +0 -40
  84. package/admin-dist/assets/vendor-tiptap-yFEgrmP-.js +0 -158
  85. package/admin-dist/assets/vendor-vue-CeoltKL-.js +0 -29
  86. package/dist/admin-api/routes/components.d.ts +0 -4
  87. package/dist/admin-api/routes/components.d.ts.map +0 -1
  88. package/dist/admin-api/routes/components.js +0 -49
  89. package/dist/admin-api/routes/components.js.map +0 -1
package/dist/hash.js ADDED
@@ -0,0 +1,57 @@
1
+ import { createHash } from 'node:crypto';
2
+ const SIDECAR_RE = /^\.([0-9a-f]{8})\.hash$/;
3
+ export function sidecarNameFor(hash) {
4
+ return `.${hash}.hash`;
5
+ }
6
+ export function parseSidecarName(entryName) {
7
+ const m = SIDECAR_RE.exec(entryName);
8
+ return m ? m[1] : null;
9
+ }
10
+ /**
11
+ * Walk the component tree and substitute `template: "name"` with `template: "name#hash"`
12
+ * using the provided template hashes. Returns a new normalized structure — input is not mutated.
13
+ */
14
+ function substituteTemplateHashes(components, templateHashes) {
15
+ if (!components)
16
+ return undefined;
17
+ return components.map(entry => {
18
+ if (typeof entry === 'string')
19
+ return entry;
20
+ const hash = templateHashes.get(entry.template);
21
+ return {
22
+ name: entry.name,
23
+ template: hash ? `${entry.template}#${hash}` : entry.template,
24
+ content: entry.content,
25
+ components: substituteTemplateHashes(entry.components, templateHashes),
26
+ };
27
+ });
28
+ }
29
+ /**
30
+ * Compute the content hash for a page or fragment manifest.
31
+ *
32
+ * Substitutes template references with `name#hash` form in memory (source files
33
+ * are not modified), serializes with stable key ordering, then MD5s.
34
+ *
35
+ * Result: 8 hex chars.
36
+ */
37
+ export function hashManifest(manifest, opts) {
38
+ const rootHash = opts.templateHashes.get(manifest.template);
39
+ const normalized = {
40
+ template: rootHash ? `${manifest.template}#${rootHash}` : manifest.template,
41
+ content: manifest.content ?? null,
42
+ components: substituteTemplateHashes(manifest.components, opts.templateHashes) ?? null,
43
+ };
44
+ const json = JSON.stringify(normalized, sortedReplacer);
45
+ return createHash('md5').update(json).digest('hex').slice(0, 8);
46
+ }
47
+ function sortedReplacer(_key, value) {
48
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
49
+ const out = {};
50
+ for (const k of Object.keys(value).sort()) {
51
+ out[k] = value[k];
52
+ }
53
+ return out;
54
+ }
55
+ return value;
56
+ }
57
+ //# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../src/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxC,MAAM,UAAU,GAAG,yBAAyB,CAAA;AAE5C,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,IAAI,OAAO,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACpC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACxB,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAC/B,UAAwC,EACxC,cAAmC;IAEnC,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAA;IACjC,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC/C,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;YAC7D,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,cAAc,CAAC;SACvE,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAMD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,QAAyC,EACzC,IAAyB;IAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC3D,MAAM,UAAU,GAAG;QACjB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ;QAC3E,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI;QACjC,UAAU,EAAE,wBAAwB,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI;KACvF,CAAA;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;IACvD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,KAAc;IAClD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,GAAG,GAA4B,EAAE,CAAA;QACvC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACrE,GAAG,CAAC,CAAC,CAAC,GAAI,KAAiC,CAAC,CAAC,CAAC,CAAA;QAChD,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC"}
package/dist/index.d.ts CHANGED
@@ -5,8 +5,7 @@ export { resolveComponent, resolveFragment, resolvePage } from './resolver.js';
5
5
  export { loadSite } from './site-loader.js';
6
6
  export type { Site, LoadSiteOptions } from './site-loader.js';
7
7
  export { loadTemplate, invalidateTemplate, invalidateAllTemplates } from './template-loader.js';
8
- export { scopeHtml, scopeCss, hashPath, generateScopeId, resetScopeCounter } from './scope.js';
9
- export { createApp } from './app.js';
8
+ export { scopeHtml, scopeCss, hashPath } from './scope.js';
10
9
  export { createFilesystemProvider } from './providers/filesystem.js';
11
10
  export { createAzureBlobProvider } from './providers/azure-blob.js';
12
11
  export type { AzureBlobProviderOptions } from './providers/azure-blob.js';
@@ -14,11 +13,11 @@ export { createS3Provider } from './providers/s3.js';
14
13
  export type { S3ProviderOptions } from './providers/s3.js';
15
14
  export { createR2RestProvider } from './providers/r2.js';
16
15
  export type { R2RestProviderOptions } from './providers/r2.js';
17
- export { createStorageProvider, createTargetProvider, createTargetRegistry } from './targets.js';
16
+ export { createStorageProvider, createTargetRegistry } from './targets.js';
18
17
  export { createServer } from './serve.js';
19
18
  export type { ServeOptions } from './serve.js';
20
19
  export { publishItems, resolveDependencies } from './publish.js';
21
- export { publishPageRendered, publishPageStatic, publishFragmentRendered, publishSiteManifest, publishFragmentIndex, publishFragmentWithPurge, publishPageWithPurge, createWorkerPurge } from './publish-rendered.js';
20
+ export { publishPageRendered, publishPageStatic, publishFragmentRendered, publishSiteManifest, publishFragmentIndex, publishFragmentWithPurge, publishPageWithPurge } from './publish-rendered.js';
22
21
  export { format } from './formats.js';
23
22
  export { assembleEsi, parseCacheComment, splitFragment, findEsiPaths } from './assemble.js';
24
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAG3C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC/F,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAG9D,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAGhG,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGrN,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAGrC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAG3C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC/F,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAG1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAG9D,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAG1E,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAGlM,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAGrC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
package/dist/index.js CHANGED
@@ -4,20 +4,19 @@ export { renderComponent, renderFragment, renderPage } from './renderer.js';
4
4
  export { resolveComponent, resolveFragment, resolvePage } from './resolver.js';
5
5
  export { loadSite } from './site-loader.js';
6
6
  export { loadTemplate, invalidateTemplate, invalidateAllTemplates } from './template-loader.js';
7
- export { scopeHtml, scopeCss, hashPath, generateScopeId, resetScopeCounter } from './scope.js';
8
- export { createApp } from './app.js';
7
+ export { scopeHtml, scopeCss, hashPath } from './scope.js';
9
8
  // Storage providers
10
9
  export { createFilesystemProvider } from './providers/filesystem.js';
11
10
  export { createAzureBlobProvider } from './providers/azure-blob.js';
12
11
  export { createS3Provider } from './providers/s3.js';
13
12
  export { createR2RestProvider } from './providers/r2.js';
14
13
  // Targets
15
- export { createStorageProvider, createTargetProvider, createTargetRegistry } from './targets.js';
14
+ export { createStorageProvider, createTargetRegistry } from './targets.js';
16
15
  // Server
17
16
  export { createServer } from './serve.js';
18
17
  // Publish
19
18
  export { publishItems, resolveDependencies } from './publish.js';
20
- export { publishPageRendered, publishPageStatic, publishFragmentRendered, publishSiteManifest, publishFragmentIndex, publishFragmentWithPurge, publishPageWithPurge, createWorkerPurge } from './publish-rendered.js';
19
+ export { publishPageRendered, publishPageStatic, publishFragmentRendered, publishSiteManifest, publishFragmentIndex, publishFragmentWithPurge, publishPageWithPurge } from './publish-rendered.js';
21
20
  // Format helpers
22
21
  export { format } from './formats.js';
23
22
  // ESI assembly (for edge workers and servers)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC/F,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,oBAAoB;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAGxD,UAAU;AACV,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAEhG,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAErN,iBAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,8CAA8C;AAC9C,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE3F,0GAA0G"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC/F,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1D,oBAAoB;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAGxD,UAAU;AACV,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAE1E,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAElM,iBAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,8CAA8C;AAC9C,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE3F,0GAA0G"}
@@ -1,6 +1,5 @@
1
- import type { ComponentManifest, FragmentManifest, PageManifest, SiteManifest, StorageProvider } from './types.js';
1
+ import type { FragmentManifest, PageManifest, SiteManifest, StorageProvider } from './types.js';
2
2
  export declare function parseSiteManifest(storage: StorageProvider, filePath: string): Promise<SiteManifest>;
3
3
  export declare function parsePageManifest(storage: StorageProvider, filePath: string): Promise<PageManifest>;
4
4
  export declare function parseFragmentManifest(storage: StorageProvider, filePath: string): Promise<FragmentManifest>;
5
- export declare function parseComponentManifest(storage: StorageProvider, filePath: string): Promise<ComponentManifest>;
6
5
  //# sourceMappingURL=manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAiBlH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAYzG;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAYzG;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAUjH;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAUnH"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAiD/G,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAYzG;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAYzG;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAUjH"}
package/dist/manifest.js CHANGED
@@ -14,6 +14,39 @@ function parseYaml(content, filePath) {
14
14
  throw err;
15
15
  }
16
16
  }
17
+ function parseJson(content, filePath) {
18
+ try {
19
+ const parsed = JSON.parse(content);
20
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
21
+ throw new Error(`Expected a JSON object in ${filePath}, got ${typeof parsed}`);
22
+ }
23
+ return parsed;
24
+ }
25
+ catch (err) {
26
+ if (err instanceof SyntaxError) {
27
+ throw new Error(`JSON parse error in ${filePath}: ${err.message}`);
28
+ }
29
+ throw err;
30
+ }
31
+ }
32
+ function parseComponents(raw) {
33
+ if (!Array.isArray(raw))
34
+ return undefined;
35
+ return raw.map(entry => {
36
+ if (typeof entry === 'string')
37
+ return entry;
38
+ if (typeof entry === 'object' && entry !== null && typeof entry.template === 'string') {
39
+ const comp = entry;
40
+ return {
41
+ name: comp.name,
42
+ template: comp.template,
43
+ content: comp.content,
44
+ components: parseComponents(comp.components),
45
+ };
46
+ }
47
+ return entry;
48
+ });
49
+ }
17
50
  export async function parseSiteManifest(storage, filePath) {
18
51
  const raw = parseYaml(await storage.readFile(filePath), filePath);
19
52
  if (typeof raw.name !== 'string') {
@@ -28,38 +61,27 @@ export async function parseSiteManifest(storage, filePath) {
28
61
  };
29
62
  }
30
63
  export async function parsePageManifest(storage, filePath) {
31
- const raw = parseYaml(await storage.readFile(filePath), filePath);
64
+ const raw = parseJson(await storage.readFile(filePath), filePath);
32
65
  if (typeof raw.template !== 'string') {
33
- throw new Error(`Invalid page.yaml at ${filePath}: missing required "template" field`);
66
+ throw new Error(`Invalid page.json at ${filePath}: missing required "template" field`);
34
67
  }
35
68
  return {
36
- route: '', // derived from folder path by site-loader
69
+ route: '',
37
70
  template: raw.template,
38
71
  content: raw.content,
39
- components: raw.components,
72
+ components: parseComponents(raw.components),
40
73
  cache: raw.cache,
41
74
  };
42
75
  }
43
76
  export async function parseFragmentManifest(storage, filePath) {
44
- const raw = parseYaml(await storage.readFile(filePath), filePath);
45
- if (typeof raw.template !== 'string') {
46
- throw new Error(`Invalid fragment.yaml at ${filePath}: missing required "template" field`);
47
- }
48
- return {
49
- template: raw.template,
50
- content: raw.content,
51
- components: raw.components,
52
- };
53
- }
54
- export async function parseComponentManifest(storage, filePath) {
55
- const raw = parseYaml(await storage.readFile(filePath), filePath);
77
+ const raw = parseJson(await storage.readFile(filePath), filePath);
56
78
  if (typeof raw.template !== 'string') {
57
- throw new Error(`Invalid component.yaml at ${filePath}: missing required "template" field`);
79
+ throw new Error(`Invalid fragment.json at ${filePath}: missing required "template" field`);
58
80
  }
59
81
  return {
60
82
  template: raw.template,
61
83
  content: raw.content,
62
- components: raw.components,
84
+ components: parseComponents(raw.components),
63
85
  };
64
86
  }
65
87
  //# sourceMappingURL=manifest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { StorageProvider, PurgeStrategy, CacheConfig } from './types.js';
4
4
  * Local components are baked in. Fragment markup is replaced at request time by the worker.
5
5
  * CSS is stored as separate hashed files for immutable caching.
6
6
  */
7
- export declare function publishPageRendered(pageName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, targetCache?: CacheConfig, templatesDir?: string): Promise<{
7
+ export declare function publishPageRendered(pageName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, targetCache?: CacheConfig, templatesDir?: string, manifestHash?: string): Promise<{
8
8
  files: number;
9
9
  removed: number;
10
10
  }>;
@@ -13,14 +13,14 @@ export declare function publishPageRendered(pageName: string, sourceStorage: Sto
13
13
  * All components (including fragments) are baked in. CSS/JS inline.
14
14
  * For static hosting: GitHub Pages, Netlify, Vercel, any file server.
15
15
  */
16
- export declare function publishPageStatic(pageName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, templatesDir?: string): Promise<{
16
+ export declare function publishPageStatic(pageName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, templatesDir?: string, manifestHash?: string): Promise<{
17
17
  files: number;
18
18
  }>;
19
19
  /**
20
20
  * Publish a fragment as HTML with a <head> section for CSS/JS.
21
21
  * The worker injects <head> content before </head> and body content at the ESI placeholder.
22
22
  */
23
- export declare function publishFragmentRendered(fragmentName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, templatesDir?: string): Promise<{
23
+ export declare function publishFragmentRendered(fragmentName: string, sourceStorage: StorageProvider, sourceDir: string, targetStorage: StorageProvider, templatesDir?: string, manifestHash?: string): Promise<{
24
24
  files: number;
25
25
  removed: number;
26
26
  }>;
@@ -37,8 +37,6 @@ export declare function publishFragmentIndex(sourceStorage: StorageProvider, sou
37
37
  export declare function createCloudflarePurge(zoneId: string, apiToken: string): PurgeStrategy;
38
38
  /** Look up Cloudflare zone ID from a site URL */
39
39
  export declare function lookupCloudflareZoneId(siteUrl: string, apiToken: string): Promise<string | null>;
40
- /** @deprecated Use createCloudflarePurge instead */
41
- export declare const createWorkerPurge: typeof createCloudflarePurge;
42
40
  /**
43
41
  * Publish a fragment and purge affected pages.
44
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"publish-rendered.d.ts","sourceRoot":"","sources":["../src/publish-rendered.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAiC7E;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,WAAW,CAAC,EAAE,WAAW,EACzB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA2G7C;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAkB5B;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAuD7C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,GAC7B,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,GAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAiBnC;AAED,0CAA0C;AAC1C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAcrF;AAED,iDAAiD;AACjD,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQtG;AAED,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,8BAAwB,CAAA;AAEtD;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,KAAK,EAAE,aAAa,EACpB,SAAS,GAAE,KAAK,GAAG,KAAa,GAC/B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAkBlD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAUlD"}
1
+ {"version":3,"file":"publish-rendered.d.ts","sourceRoot":"","sources":["../src/publish-rendered.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAqD7E;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,WAAW,CAAC,EAAE,WAAW,EACzB,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA8G7C;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAsB5B;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA0D7C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,GAC7B,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,GAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAiBnC;AAED,0CAA0C;AAC1C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAcrF;AAED,iDAAiD;AACjD,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQtG;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,KAAK,EAAE,aAAa,EACpB,SAAS,GAAE,KAAK,GAAG,KAAa,GAC/B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAkBlD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,eAAe,EAC9B,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAUlD"}
@@ -2,9 +2,32 @@ import { createHash } from 'node:crypto';
2
2
  import { loadSite } from './site-loader.js';
3
3
  import { resolvePage, resolveComponent } from './resolver.js';
4
4
  import { renderComponent, renderPage } from './renderer.js';
5
+ import { parseSidecarName, sidecarNameFor } from './hash.js';
5
6
  function contentHash(content) {
6
7
  return createHash('md5').update(content).digest('hex').slice(0, 8);
7
8
  }
9
+ /**
10
+ * Write a content-hash sidecar (zero-byte file) and remove any older sidecar(s)
11
+ * in the same directory. Used by compare-targets to detect changes via readDir.
12
+ */
13
+ async function writeSidecar(storage, dir, hash) {
14
+ // Remove stale sidecars first — there should only ever be one per dir
15
+ try {
16
+ const entries = await storage.readDir(dir);
17
+ for (const e of entries) {
18
+ const existing = parseSidecarName(e.name);
19
+ if (existing && existing !== hash) {
20
+ try {
21
+ await storage.rm(`${dir}/${e.name}`);
22
+ }
23
+ catch { /* already gone */ }
24
+ }
25
+ }
26
+ }
27
+ catch { /* dir doesn't exist yet — mkdir below */ }
28
+ await storage.mkdir(dir);
29
+ await storage.writeFile(`${dir}/${sidecarNameFor(hash)}`, '');
30
+ }
8
31
  /** List existing hashed files (styles.*.css, script.*.js) in a directory */
9
32
  async function listHashedFiles(storage, dir) {
10
33
  try {
@@ -37,7 +60,7 @@ async function cleanupOldFiles(storage, oldFiles, newFiles) {
37
60
  * Local components are baked in. Fragment markup is replaced at request time by the worker.
38
61
  * CSS is stored as separate hashed files for immutable caching.
39
62
  */
40
- export async function publishPageRendered(pageName, sourceStorage, sourceDir, targetStorage, targetCache, templatesDir) {
63
+ export async function publishPageRendered(pageName, sourceStorage, sourceDir, targetStorage, targetCache, templatesDir, manifestHash) {
41
64
  const site = await loadSite({ siteDir: sourceDir, storage: sourceStorage, templatesDir });
42
65
  const page = site.pages.get(pageName);
43
66
  if (!page)
@@ -51,10 +74,10 @@ export async function publishPageRendered(pageName, sourceStorage, sourceDir, ta
51
74
  const localHeadParts = [];
52
75
  const esiHeadTags = [];
53
76
  for (let i = 0; i < resolved.children.length; i++) {
54
- const childName = page.components[i];
55
- const isFragment = childName.startsWith('@');
77
+ const childEntry = page.components[i];
78
+ const isFragment = typeof childEntry === 'string' && childEntry.startsWith('@');
56
79
  if (isFragment) {
57
- const fragName = childName.slice(1);
80
+ const fragName = childEntry.slice(1);
58
81
  const fragPath = `fragments/${fragName}/index.html`;
59
82
  esiHeadTags.push(`<!--esi-head:/${fragPath}-->`);
60
83
  bodyParts.push(`<!--esi:/${fragPath}-->`);
@@ -132,6 +155,9 @@ ${bodyContent}
132
155
  await targetStorage.mkdir(pageDir);
133
156
  await targetStorage.writeFile(`${pageDir}/index.html`, html);
134
157
  fileCount++;
158
+ // Write content-hash sidecar for compare-targets
159
+ if (manifestHash)
160
+ await writeSidecar(targetStorage, pageDir, manifestHash);
135
161
  // Clean up old hashed files
136
162
  const removed = await cleanupOldFiles(targetStorage, oldFiles, newFiles);
137
163
  return { files: fileCount, removed };
@@ -141,7 +167,7 @@ ${bodyContent}
141
167
  * All components (including fragments) are baked in. CSS/JS inline.
142
168
  * For static hosting: GitHub Pages, Netlify, Vercel, any file server.
143
169
  */
144
- export async function publishPageStatic(pageName, sourceStorage, sourceDir, targetStorage, templatesDir) {
170
+ export async function publishPageStatic(pageName, sourceStorage, sourceDir, targetStorage, templatesDir, manifestHash) {
145
171
  const site = await loadSite({ siteDir: sourceDir, storage: sourceStorage, templatesDir });
146
172
  const page = site.pages.get(pageName);
147
173
  if (!page)
@@ -155,19 +181,24 @@ export async function publishPageStatic(pageName, sourceStorage, sourceDir, targ
155
181
  const outputDir = urlPath || '.';
156
182
  await targetStorage.mkdir(outputDir);
157
183
  await targetStorage.writeFile(outputPath, html);
184
+ // Sidecar goes under pages/{name}/ regardless of static route layout, so compare
185
+ // can find it the same way it does for ESI targets. pages/ doesn't clash with
186
+ // static serving (routes are / and /{route}, not /pages/*).
187
+ if (manifestHash)
188
+ await writeSidecar(targetStorage, `pages/${pageName}`, manifestHash);
158
189
  return { files: 1 };
159
190
  }
160
191
  /**
161
192
  * Publish a fragment as HTML with a <head> section for CSS/JS.
162
193
  * The worker injects <head> content before </head> and body content at the ESI placeholder.
163
194
  */
164
- export async function publishFragmentRendered(fragmentName, sourceStorage, sourceDir, targetStorage, templatesDir) {
195
+ export async function publishFragmentRendered(fragmentName, sourceStorage, sourceDir, targetStorage, templatesDir, manifestHash) {
165
196
  const site = await loadSite({ siteDir: sourceDir, storage: sourceStorage, templatesDir });
166
197
  const fragment = site.fragments.get(fragmentName);
167
198
  if (!fragment)
168
199
  throw new Error(`Fragment "${fragmentName}" not found`);
169
200
  const ctx = { site, templatesDir: site.templatesDir, visited: new Set(), path: [`@${fragmentName}`] };
170
- const resolved = await resolveComponent(`@${fragmentName}`, '', ctx);
201
+ const resolved = await resolveComponent(`@${fragmentName}`, ctx);
171
202
  // Scope IDs are now deterministic (hash-based), no reset needed
172
203
  const rendered = await renderComponent(resolved);
173
204
  const fragDir = `fragments/${fragmentName}`;
@@ -204,6 +235,9 @@ export async function publishFragmentRendered(fragmentName, sourceStorage, sourc
204
235
  await targetStorage.mkdir(fragDir);
205
236
  await targetStorage.writeFile(`${fragDir}/index.html`, fragmentHtml);
206
237
  fileCount++;
238
+ // Write content-hash sidecar for compare-targets
239
+ if (manifestHash)
240
+ await writeSidecar(targetStorage, fragDir, manifestHash);
207
241
  // Clean up old hashed files
208
242
  const removed = await cleanupOldFiles(targetStorage, oldFiles, newFiles);
209
243
  return { files: fileCount, removed };
@@ -226,11 +260,11 @@ export async function publishFragmentIndex(sourceStorage, sourceDir, targetStora
226
260
  for (const [_pageName, page] of site.pages) {
227
261
  if (!page.components)
228
262
  continue;
229
- for (const comp of page.components) {
230
- if (comp.startsWith('@')) {
231
- if (!index[comp])
232
- index[comp] = [];
233
- index[comp].push(page.route);
263
+ for (const entry of page.components) {
264
+ if (typeof entry === 'string' && entry.startsWith('@')) {
265
+ if (!index[entry])
266
+ index[entry] = [];
267
+ index[entry].push(page.route);
234
268
  }
235
269
  }
236
270
  }
@@ -266,8 +300,6 @@ export async function lookupCloudflareZoneId(siteUrl, apiToken) {
266
300
  const data = await res.json();
267
301
  return data.result?.[0]?.id ?? null;
268
302
  }
269
- /** @deprecated Use createCloudflarePurge instead */
270
- export const createWorkerPurge = createCloudflarePurge;
271
303
  /**
272
304
  * Publish a fragment and purge affected pages.
273
305
  */
@@ -1 +1 @@
1
- {"version":3,"file":"publish-rendered.js","sourceRoot":"","sources":["../src/publish-rendered.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish-rendered.js","sourceRoot":"","sources":["../src/publish-rendered.ts"],"names":[],"mappings":"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"}
package/dist/publish.js CHANGED
@@ -74,40 +74,41 @@ async function collectDependencies(storage, siteBase, item, allItems, visited) {
74
74
  if (visited.has(item))
75
75
  return;
76
76
  visited.add(item);
77
- const manifestNames = ['page.yaml', 'fragment.yaml', 'component.yaml'];
78
- let manifestContent = null;
77
+ const manifestNames = ['page.json', 'fragment.json'];
78
+ let manifest = null;
79
79
  const itemPath = join(siteBase, item);
80
80
  for (const name of manifestNames) {
81
81
  try {
82
- manifestContent = await storage.readFile(join(itemPath, name));
82
+ manifest = JSON.parse(await storage.readFile(join(itemPath, name)));
83
83
  break;
84
84
  }
85
85
  catch {
86
86
  continue;
87
87
  }
88
88
  }
89
- if (!manifestContent)
89
+ if (!manifest)
90
90
  return;
91
- // Parse template reference
92
- const templateMatch = manifestContent.match(/template:\s*(.+)/);
93
- if (templateMatch) {
94
- const templateName = templateMatch[1].trim();
95
- allItems.add(`templates/${templateName}`);
91
+ if (typeof manifest.template === 'string') {
92
+ allItems.add(`templates/${manifest.template}`);
96
93
  }
97
- // Parse component references
98
- const componentsMatch = manifestContent.match(/components:\n((?:\s+-\s+.+\n?)+)/);
99
- if (componentsMatch) {
100
- const lines = componentsMatch[1].split('\n').map(l => l.trim()).filter(l => l.startsWith('-'));
101
- for (const line of lines) {
102
- const name = line.replace(/^-\s+/, '').replace(/^["']|["']$/g, '');
103
- if (name.startsWith('@')) {
104
- const fragName = name.slice(1);
105
- allItems.add(`fragments/${fragName}`);
106
- await collectDependencies(storage, siteBase, `fragments/${fragName}`, allItems, visited);
94
+ if (Array.isArray(manifest.components)) {
95
+ await collectComponentDeps(manifest.components, storage, siteBase, allItems, visited);
96
+ }
97
+ }
98
+ async function collectComponentDeps(components, storage, siteBase, allItems, visited) {
99
+ for (const entry of components) {
100
+ if (typeof entry === 'string' && entry.startsWith('@')) {
101
+ const fragName = entry.slice(1);
102
+ allItems.add(`fragments/${fragName}`);
103
+ await collectDependencies(storage, siteBase, `fragments/${fragName}`, allItems, visited);
104
+ }
105
+ else if (typeof entry === 'object' && entry !== null) {
106
+ const comp = entry;
107
+ if (typeof comp.template === 'string') {
108
+ allItems.add(`templates/${comp.template}`);
107
109
  }
108
- else {
109
- const childPath = `${item}/${name}`;
110
- await collectDependencies(storage, siteBase, childPath, allItems, visited);
110
+ if (Array.isArray(comp.components)) {
111
+ await collectComponentDeps(comp.components, storage, siteBase, allItems, visited);
111
112
  }
112
113
  }
113
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAgBhC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,aAA8B,EAC9B,UAAkB,EAClB,aAA8B,EAC9B,UAAkB,EAClB,KAAe;IAEf,IAAI,WAAW,GAAG,CAAC,CAAA;IAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QACzC,WAAW,IAAI,MAAM,aAAa,CAAC,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAA;IAC1F,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QAC5E,MAAM,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAA;QACtE,WAAW,EAAE,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,CAAA;AACxB,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,MAAuB,EACvB,UAAkB,EAClB,MAAuB,EACvB,UAAkB;IAElB,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,gCAAgC;IAChC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QACjD,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;QACvC,MAAM,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QAC3C,OAAO,CAAC,CAAA;IACV,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;IAClC,CAAC;IAED,mBAAmB;IACnB,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,CAAA;IAE9C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAChD,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAE9B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAChD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,KAAK,IAAI,MAAM,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QACxE,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;YAClD,MAAM,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;YAC5C,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,OAAO,CAAC,IAAY;IAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,KAAK,CAAC,GAAG,EAAE,CAAA;IACX,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAwB,EACxB,QAAgB,EAChB,KAAe;IAEf,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IACvE,CAAC;IAED,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAA;AACtB,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAAwB,EACxB,QAAgB,EAChB,IAAY,EACZ,QAAqB,EACrB,OAAoB;IAEpB,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAM;IAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAEjB,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAA;IACtE,IAAI,eAAe,GAAkB,IAAI,CAAA;IACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAErC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,eAAe,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;YAC9D,MAAK;QACP,CAAC;QAAC,MAAM,CAAC;YAAC,SAAQ;QAAC,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,eAAe;QAAE,OAAM;IAE5B,2BAA2B;IAC3B,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAC/D,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC5C,QAAQ,CAAC,GAAG,CAAC,aAAa,YAAY,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,6BAA6B;IAC7B,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACjF,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9F,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;YAClE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC9B,QAAQ,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAA;gBACrC,MAAM,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC1F,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,CAAA;gBACnC,MAAM,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ResolvedComponent } from './types.js';
1
+ import type { ResolvedComponent, ComponentEntry } from './types.js';
2
2
  import type { Site } from './site-loader.js';
3
3
  interface ResolveContext {
4
4
  site: Site;
@@ -6,7 +6,7 @@ interface ResolveContext {
6
6
  visited: Set<string>;
7
7
  path: string[];
8
8
  }
9
- export declare function resolveComponent(name: string, parentDir: string, ctx: ResolveContext): Promise<ResolvedComponent>;
9
+ export declare function resolveComponent(entry: ComponentEntry, ctx: ResolveContext): Promise<ResolvedComponent>;
10
10
  export declare function resolveFragment(fragmentName: string, site: Site): Promise<ResolvedComponent>;
11
11
  export declare function resolvePage(pageName: string, site: Site): Promise<ResolvedComponent>;
12
12
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,MAAM,YAAY,CAAA;AAItE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAE5C,UAAU,cAAc;IACtB,IAAI,EAAE,IAAI,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACpB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,iBAAiB,CAAC,CA2D5B;AAED,wBAAsB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuBlG;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuB1F"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAmB,MAAM,YAAY,CAAA;AAGpF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAE5C,UAAU,cAAc;IACtB,IAAI,EAAE,IAAI,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACpB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,cAAc,EACrB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAa5B;AAkED,wBAAsB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsBlG;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsB1F"}