fundus 0.12.2 → 0.13.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 (103) hide show
  1. package/build/client/_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css +1 -0
  2. package/build/client/_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css.br +0 -0
  3. package/build/client/_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{BR73V5PG.js → Cpo53v_d.js} +1 -1
  5. package/build/client/_app/immutable/chunks/Cpo53v_d.js.br +3 -0
  6. package/build/client/_app/immutable/chunks/Cpo53v_d.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/SCZFzB6X.js +108 -0
  8. package/build/client/_app/immutable/chunks/SCZFzB6X.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/SCZFzB6X.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/rkm4Gik6.js +1 -0
  11. package/build/client/_app/immutable/chunks/rkm4Gik6.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/rkm4Gik6.js.gz +0 -0
  13. package/build/client/_app/immutable/entry/{app.CmTIRtCw.js → app.z-Xkr99w.js} +2 -2
  14. package/build/client/_app/immutable/entry/app.z-Xkr99w.js.br +0 -0
  15. package/build/client/_app/immutable/entry/app.z-Xkr99w.js.gz +0 -0
  16. package/build/client/_app/immutable/entry/start.CHlFBfLa.js +1 -0
  17. package/build/client/_app/immutable/entry/start.CHlFBfLa.js.br +0 -0
  18. package/build/client/_app/immutable/entry/start.CHlFBfLa.js.gz +0 -0
  19. package/build/client/_app/immutable/nodes/{0.CNULKexJ.js → 0.DApz1CKw.js} +1 -1
  20. package/build/client/_app/immutable/nodes/0.DApz1CKw.js.br +0 -0
  21. package/build/client/_app/immutable/nodes/0.DApz1CKw.js.gz +0 -0
  22. package/build/client/_app/immutable/nodes/{1.Cq-r1S-6.js → 1.CsFr-PaL.js} +1 -1
  23. package/build/client/_app/immutable/nodes/1.CsFr-PaL.js.br +3 -0
  24. package/build/client/_app/immutable/nodes/1.CsFr-PaL.js.gz +0 -0
  25. package/build/client/_app/immutable/nodes/{2.B4CjEZCb.js → 2.ba45AZgx.js} +1 -1
  26. package/build/client/_app/immutable/nodes/2.ba45AZgx.js.br +0 -0
  27. package/build/client/_app/immutable/nodes/2.ba45AZgx.js.gz +0 -0
  28. package/build/client/_app/immutable/nodes/{3.DzWxKBWe.js → 3.P9WOEhGt.js} +1 -1
  29. package/build/client/_app/immutable/nodes/3.P9WOEhGt.js.br +0 -0
  30. package/build/client/_app/immutable/nodes/3.P9WOEhGt.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{4.BkqPmamr.js → 4.CXvQQa7K.js} +1 -1
  32. package/build/client/_app/immutable/nodes/4.CXvQQa7K.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/4.CXvQQa7K.js.gz +0 -0
  34. package/build/client/_app/version.json +1 -1
  35. package/build/client/_app/version.json.br +0 -0
  36. package/build/client/_app/version.json.gz +0 -0
  37. package/build/handler.js +7 -7
  38. package/build/index.js +7 -7
  39. package/build/server/chunks/chunks/{exports.js-ku1LJuiG.js → exports.js-C5HMgZGL.js} +2 -2
  40. package/build/server/chunks/chunks/{exports.js-ku1LJuiG.js.map → exports.js-C5HMgZGL.js.map} +1 -1
  41. package/build/server/chunks/chunks/{internal.js-BSRzKMSE.js → internal.js-BnaiVrdk.js} +2 -2
  42. package/build/server/chunks/chunks/{internal.js-BSRzKMSE.js.map → internal.js-BnaiVrdk.js.map} +1 -1
  43. package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -1
  44. package/build/server/chunks/chunks/{shared.js-DgL50WRD.js → shared.js-NjzxopNt.js} +2 -2
  45. package/build/server/chunks/chunks/{shared.js-DgL50WRD.js.map → shared.js-NjzxopNt.js.map} +1 -1
  46. package/build/server/chunks/chunks/{utils.js-D4p4YSNW.js → utils.js-ZvXGkEDJ.js} +3 -3
  47. package/build/server/chunks/chunks/{utils.js-D4p4YSNW.js.map → utils.js-ZvXGkEDJ.js.map} +1 -1
  48. package/build/server/chunks/{handler-BRtsY9uB.js → handler-Zr8T8kxt.js} +5 -5
  49. package/build/server/chunks/{handler-BRtsY9uB.js.map → handler-Zr8T8kxt.js.map} +1 -1
  50. package/build/server/chunks/{index.js-g3JzUW3v.js → index.js-CylGYR9j.js} +5 -5
  51. package/build/server/chunks/{index.js-g3JzUW3v.js.map → index.js-CylGYR9j.js.map} +1 -1
  52. package/build/server/chunks/{manifest.js-D51Bb0-d.js → manifest.js-BLhgBmWN.js} +7 -7
  53. package/build/server/chunks/{manifest.js-D51Bb0-d.js.map → manifest.js-BLhgBmWN.js.map} +1 -1
  54. package/build/server/chunks/nodes/{0.js-B1bRRxWY.js → 0.js-S7CogBDa.js} +2 -2
  55. package/build/server/chunks/nodes/{0.js-B1bRRxWY.js.map → 0.js-S7CogBDa.js.map} +1 -1
  56. package/build/server/chunks/nodes/1.js-CmtmxFOc.js +7 -0
  57. package/build/server/chunks/nodes/{1.js-BIjbx0GP.js.map → 1.js-CmtmxFOc.js.map} +1 -1
  58. package/build/server/chunks/nodes/2.js-LCLS1c6Z.js +7 -0
  59. package/build/server/chunks/nodes/{2.js-B6X0GbFS.js.map → 2.js-LCLS1c6Z.js.map} +1 -1
  60. package/build/server/chunks/nodes/3.js-Bng5WtIG.js +7 -0
  61. package/build/server/chunks/nodes/{3.js-CQVJ114p.js.map → 3.js-Bng5WtIG.js.map} +1 -1
  62. package/build/server/chunks/nodes/{4.js-Bt9pLOHE.js → 4.js-BQHl-pD5.js} +2 -2
  63. package/build/server/chunks/nodes/{4.js-Bt9pLOHE.js.map → 4.js-BQHl-pD5.js.map} +1 -1
  64. package/dist/runtime/components/Slice.svelte +184 -17
  65. package/dist/runtime/components/Slice.svelte.d.ts +3 -4
  66. package/dist/runtime/geometry.d.ts +15 -9
  67. package/dist/runtime/geometry.js +21 -14
  68. package/dist/runtime/observe-border-box-size.d.ts +1 -1
  69. package/dist/runtime/observe-border-box-size.js +2 -2
  70. package/package.json +1 -1
  71. package/build/client/_app/immutable/assets/AssetSourceMenu.DOu9eU7n.css +0 -1
  72. package/build/client/_app/immutable/assets/AssetSourceMenu.DOu9eU7n.css.br +0 -0
  73. package/build/client/_app/immutable/assets/AssetSourceMenu.DOu9eU7n.css.gz +0 -0
  74. package/build/client/_app/immutable/chunks/BR73V5PG.js.br +0 -2
  75. package/build/client/_app/immutable/chunks/BR73V5PG.js.gz +0 -0
  76. package/build/client/_app/immutable/chunks/D-dMdMUj.js +0 -1
  77. package/build/client/_app/immutable/chunks/D-dMdMUj.js.br +0 -0
  78. package/build/client/_app/immutable/chunks/D-dMdMUj.js.gz +0 -0
  79. package/build/client/_app/immutable/chunks/PGG-LyPT.js +0 -108
  80. package/build/client/_app/immutable/chunks/PGG-LyPT.js.br +0 -0
  81. package/build/client/_app/immutable/chunks/PGG-LyPT.js.gz +0 -0
  82. package/build/client/_app/immutable/entry/app.CmTIRtCw.js.br +0 -0
  83. package/build/client/_app/immutable/entry/app.CmTIRtCw.js.gz +0 -0
  84. package/build/client/_app/immutable/entry/start.M4xqAoBc.js +0 -1
  85. package/build/client/_app/immutable/entry/start.M4xqAoBc.js.br +0 -1
  86. package/build/client/_app/immutable/entry/start.M4xqAoBc.js.gz +0 -0
  87. package/build/client/_app/immutable/nodes/0.CNULKexJ.js.br +0 -0
  88. package/build/client/_app/immutable/nodes/0.CNULKexJ.js.gz +0 -0
  89. package/build/client/_app/immutable/nodes/1.Cq-r1S-6.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/1.Cq-r1S-6.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/2.B4CjEZCb.js.br +0 -0
  92. package/build/client/_app/immutable/nodes/2.B4CjEZCb.js.gz +0 -0
  93. package/build/client/_app/immutable/nodes/3.DzWxKBWe.js.br +0 -0
  94. package/build/client/_app/immutable/nodes/3.DzWxKBWe.js.gz +0 -0
  95. package/build/client/_app/immutable/nodes/4.BkqPmamr.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/4.BkqPmamr.js.gz +0 -0
  97. package/build/server/chunks/nodes/1.js-BIjbx0GP.js +0 -7
  98. package/build/server/chunks/nodes/2.js-B6X0GbFS.js +0 -7
  99. package/build/server/chunks/nodes/3.js-CQVJ114p.js +0 -7
  100. package/dist/runtime/components/SliceCanvas.svelte +0 -173
  101. package/dist/runtime/components/SliceCanvas.svelte.d.ts +0 -10
  102. package/dist/runtime/components/SliceDom.svelte +0 -161
  103. package/dist/runtime/components/SliceDom.svelte.d.ts +0 -10
@@ -10,13 +10,13 @@ return {
10
10
  assets: new Set(["favicon.svg"]),
11
11
  mimeTypes: {".svg":"image/svg+xml"},
12
12
  _: {
13
- client: {start:"_app/immutable/entry/start.M4xqAoBc.js",app:"_app/immutable/entry/app.CmTIRtCw.js",imports:["_app/immutable/entry/start.M4xqAoBc.js","_app/immutable/chunks/D-dMdMUj.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/entry/app.CmTIRtCw.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/xihTtKlq.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
13
+ client: {start:"_app/immutable/entry/start.CHlFBfLa.js",app:"_app/immutable/entry/app.z-Xkr99w.js",imports:["_app/immutable/entry/start.CHlFBfLa.js","_app/immutable/chunks/rkm4Gik6.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/entry/app.z-Xkr99w.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/xihTtKlq.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
14
14
  nodes: [
15
- __memo(() => import('./nodes/0.js-B1bRRxWY.js')),
16
- __memo(() => import('./nodes/1.js-BIjbx0GP.js')),
17
- __memo(() => import('./nodes/2.js-B6X0GbFS.js')),
18
- __memo(() => import('./nodes/3.js-CQVJ114p.js')),
19
- __memo(() => import('./nodes/4.js-Bt9pLOHE.js'))
15
+ __memo(() => import('./nodes/0.js-S7CogBDa.js')),
16
+ __memo(() => import('./nodes/1.js-CmtmxFOc.js')),
17
+ __memo(() => import('./nodes/2.js-LCLS1c6Z.js')),
18
+ __memo(() => import('./nodes/3.js-Bng5WtIG.js')),
19
+ __memo(() => import('./nodes/4.js-BQHl-pD5.js'))
20
20
  ],
21
21
  remotes: {
22
22
 
@@ -209,4 +209,4 @@ return {
209
209
  })();
210
210
 
211
211
  export { manifest as m };
212
- //# sourceMappingURL=manifest.js-D51Bb0-d.js.map
212
+ //# sourceMappingURL=manifest.js-BLhgBmWN.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js-D51Bb0-d.js","sources":["../../../.svelte-kit/output/server/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"favicon.svg\"]),\n\tmimeTypes: {\".svg\":\"image/svg+xml\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.M4xqAoBc.js\",app:\"_app/immutable/entry/app.CmTIRtCw.js\",imports:[\"_app/immutable/entry/start.M4xqAoBc.js\",\"_app/immutable/chunks/D-dMdMUj.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/entry/app.CmTIRtCw.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/xihTtKlq.js\"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},\n\t\tnodes: [\n\t\t\t__memo(() => import('./nodes/0.js')),\n\t\t\t__memo(() => import('./nodes/1.js')),\n\t\t\t__memo(() => import('./nodes/2.js')),\n\t\t\t__memo(() => import('./nodes/3.js')),\n\t\t\t__memo(() => import('./nodes/4.js'))\n\t\t],\n\t\tremotes: {\n\t\t\t\n\t\t},\n\t\troutes: [\n\t\t\t{\n\t\t\t\tid: \"/\",\n\t\t\t\tpattern: /^\\/$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 2 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/delete\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/delete\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/delete/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/move\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/move\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/move/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]/raw\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/raw\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/raw/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]/reimport\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/reimport\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/reimport/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/folders\",\n\t\t\t\tpattern: /^\\/api\\/folders\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/folders/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/folders/[path]\",\n\t\t\t\tpattern: /^\\/api\\/folders\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/folders/_path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/imports\",\n\t\t\t\tpattern: /^\\/api\\/imports\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/imports/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/manifests\",\n\t\t\t\tpattern: /^\\/api\\/manifests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/manifests/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/manifests/[name]\",\n\t\t\t\tpattern: /^\\/api\\/manifests\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"name\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/manifests/_name_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/adopt\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/adopt\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/adopt/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/edited/accept\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/edited\\/accept\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/edited/accept/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/edited/dismiss\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/edited\\/dismiss\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/edited/dismiss/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/reconcile\",\n\t\t\t\tpattern: /^\\/api\\/reconcile\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/reconcile/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/reveal\",\n\t\t\t\tpattern: /^\\/api\\/reveal\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/reveal/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/state\",\n\t\t\t\tpattern: /^\\/api\\/state\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/state/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/usage\",\n\t\t\t\tpattern: /^\\/api\\/usage\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/usage/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/[...path]\",\n\t\t\t\tpattern: /^\\/api(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/asset/[id]\",\n\t\t\t\tpattern: /^\\/asset\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 3 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/proxy/[...path]\",\n\t\t\t\tpattern: /^\\/files\\/proxy(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/proxy/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/raw/[...path]\",\n\t\t\t\tpattern: /^\\/files\\/raw(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/raw/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/[...path]\",\n\t\t\t\tpattern: /^\\/files(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/manifests\",\n\t\t\t\tpattern: /^\\/manifests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 4 },\n\t\t\t\tendpoint: null\n\t\t\t}\n\t\t],\n\t\tprerendered_routes: new Set([]),\n\t\tmatchers: async () => {\n\t\t\t\n\t\t\treturn { };\n\t\t},\n\t\tserver_assets: {}\n\t}\n}\n})();\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js-BLhgBmWN.js","sources":["../../../.svelte-kit/output/server/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"favicon.svg\"]),\n\tmimeTypes: {\".svg\":\"image/svg+xml\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.CHlFBfLa.js\",app:\"_app/immutable/entry/app.z-Xkr99w.js\",imports:[\"_app/immutable/entry/start.CHlFBfLa.js\",\"_app/immutable/chunks/rkm4Gik6.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/entry/app.z-Xkr99w.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/xihTtKlq.js\"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},\n\t\tnodes: [\n\t\t\t__memo(() => import('./nodes/0.js')),\n\t\t\t__memo(() => import('./nodes/1.js')),\n\t\t\t__memo(() => import('./nodes/2.js')),\n\t\t\t__memo(() => import('./nodes/3.js')),\n\t\t\t__memo(() => import('./nodes/4.js'))\n\t\t],\n\t\tremotes: {\n\t\t\t\n\t\t},\n\t\troutes: [\n\t\t\t{\n\t\t\t\tid: \"/\",\n\t\t\t\tpattern: /^\\/$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 2 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/delete\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/delete\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/delete/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/move\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/move\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/move/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]/raw\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/raw\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/raw/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/assets/[id]/reimport\",\n\t\t\t\tpattern: /^\\/api\\/assets\\/([^/]+?)\\/reimport\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/assets/_id_/reimport/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/folders\",\n\t\t\t\tpattern: /^\\/api\\/folders\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/folders/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/folders/[path]\",\n\t\t\t\tpattern: /^\\/api\\/folders\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/folders/_path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/imports\",\n\t\t\t\tpattern: /^\\/api\\/imports\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/imports/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/manifests\",\n\t\t\t\tpattern: /^\\/api\\/manifests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/manifests/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/manifests/[name]\",\n\t\t\t\tpattern: /^\\/api\\/manifests\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"name\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/manifests/_name_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/adopt\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/adopt\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/adopt/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/edited/accept\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/edited\\/accept\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/edited/accept/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/raw/edited/dismiss\",\n\t\t\t\tpattern: /^\\/api\\/raw\\/edited\\/dismiss\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/raw/edited/dismiss/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/reconcile\",\n\t\t\t\tpattern: /^\\/api\\/reconcile\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/reconcile/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/reveal\",\n\t\t\t\tpattern: /^\\/api\\/reveal\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/reveal/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/state\",\n\t\t\t\tpattern: /^\\/api\\/state\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/state/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/usage\",\n\t\t\t\tpattern: /^\\/api\\/usage\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/usage/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/api/[...path]\",\n\t\t\t\tpattern: /^\\/api(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/api/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/asset/[id]\",\n\t\t\t\tpattern: /^\\/asset\\/([^/]+?)\\/?$/,\n\t\t\t\tparams: [{\"name\":\"id\",\"optional\":false,\"rest\":false,\"chained\":false}],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 3 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/proxy/[...path]\",\n\t\t\t\tpattern: /^\\/files\\/proxy(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/proxy/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/raw/[...path]\",\n\t\t\t\tpattern: /^\\/files\\/raw(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/raw/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/files/[...path]\",\n\t\t\t\tpattern: /^\\/files(?:\\/([^]*))?\\/?$/,\n\t\t\t\tparams: [{\"name\":\"path\",\"optional\":false,\"rest\":true,\"chained\":true}],\n\t\t\t\tpage: null,\n\t\t\t\tendpoint: __memo(() => import('./entries/endpoints/files/_...path_/_server.ts.js'))\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/manifests\",\n\t\t\t\tpattern: /^\\/manifests\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 4 },\n\t\t\t\tendpoint: null\n\t\t\t}\n\t\t],\n\t\tprerendered_routes: new Set([]),\n\t\tmatchers: async () => {\n\t\t\t\n\t\t\treturn { };\n\t\t},\n\t\tserver_assets: {}\n\t}\n}\n})();\n"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ const universal = {
3
3
  "ssr": false
4
4
  };
5
5
  const universal_id = "src/routes/+layout.ts";
6
- const imports = ["_app/immutable/nodes/0.CNULKexJ.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/D-dMdMUj.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/BR73V5PG.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/dNO-9VOT.js","_app/immutable/chunks/B9HdDE5n.js"];
6
+ const imports = ["_app/immutable/nodes/0.DApz1CKw.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/rkm4Gik6.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Cpo53v_d.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/dNO-9VOT.js","_app/immutable/chunks/B9HdDE5n.js"];
7
7
  const stylesheets = ["_app/immutable/assets/ManifestSelector.Cue3sCA1.css","_app/immutable/assets/FileChangeBadge.C6wwUZJS.css","_app/immutable/assets/0.CHekvMpo.css"];
8
8
  const fonts = [];
9
9
 
10
10
  export { fonts, imports, index, stylesheets, universal, universal_id };
11
- //# sourceMappingURL=0.js-B1bRRxWY.js.map
11
+ //# sourceMappingURL=0.js-S7CogBDa.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"0.js-B1bRRxWY.js","sources":["../../../../.svelte-kit/output/server/nodes/0.js"],"sourcesContent":["\n\nexport const index = 0;\nexport const universal = {\n \"ssr\": false\n};\nexport const universal_id = \"src/routes/+layout.ts\";\nexport const imports = [\"_app/immutable/nodes/0.CNULKexJ.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/D-dMdMUj.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/BR73V5PG.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/B9HdDE5n.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/FileChangeBadge.C6wwUZJS.css\",\"_app/immutable/assets/0.CHekvMpo.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,SAAS,GAAG;AACzB,EAAE,KAAK,EAAE;AACT;AACY,MAAC,YAAY,GAAG;AAChB,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAC5S,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,oDAAoD,CAAC,sCAAsC;AACjK,MAAC,KAAK,GAAG;;;;"}
1
+ {"version":3,"file":"0.js-S7CogBDa.js","sources":["../../../../.svelte-kit/output/server/nodes/0.js"],"sourcesContent":["\n\nexport const index = 0;\nexport const universal = {\n \"ssr\": false\n};\nexport const universal_id = \"src/routes/+layout.ts\";\nexport const imports = [\"_app/immutable/nodes/0.DApz1CKw.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/rkm4Gik6.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Cpo53v_d.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/B9HdDE5n.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/FileChangeBadge.C6wwUZJS.css\",\"_app/immutable/assets/0.CHekvMpo.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,SAAS,GAAG;AACzB,EAAE,KAAK,EAAE;AACT;AACY,MAAC,YAAY,GAAG;AAChB,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAC5S,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,oDAAoD,CAAC,sCAAsC;AACjK,MAAC,KAAK,GAAG;;;;"}
@@ -0,0 +1,7 @@
1
+ const index = 1;
2
+ const imports = ["_app/immutable/nodes/1.CsFr-PaL.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Cpo53v_d.js","_app/immutable/chunks/rkm4Gik6.js"];
3
+ const stylesheets = [];
4
+ const fonts = [];
5
+
6
+ export { fonts, imports, index, stylesheets };
7
+ //# sourceMappingURL=1.js-CmtmxFOc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"1.js-BIjbx0GP.js","sources":["../../../../.svelte-kit/output/server/nodes/1.js"],"sourcesContent":["\n\nexport const index = 1;\nexport const imports = [\"_app/immutable/nodes/1.Cq-r1S-6.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/BR73V5PG.js\",\"_app/immutable/chunks/D-dMdMUj.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAChM,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
1
+ {"version":3,"file":"1.js-CmtmxFOc.js","sources":["../../../../.svelte-kit/output/server/nodes/1.js"],"sourcesContent":["\n\nexport const index = 1;\nexport const imports = [\"_app/immutable/nodes/1.CsFr-PaL.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Cpo53v_d.js\",\"_app/immutable/chunks/rkm4Gik6.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAChM,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
@@ -0,0 +1,7 @@
1
+ const index = 2;
2
+ const imports = ["_app/immutable/nodes/2.ba45AZgx.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/rkm4Gik6.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Cpo53v_d.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/dNO-9VOT.js","_app/immutable/chunks/B9HdDE5n.js","_app/immutable/chunks/SCZFzB6X.js","_app/immutable/chunks/hUfV2O0k.js"];
3
+ const stylesheets = ["_app/immutable/assets/ManifestSelector.Cue3sCA1.css","_app/immutable/assets/FileChangeBadge.C6wwUZJS.css","_app/immutable/assets/Popover.CCTioPJZ.css","_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css","_app/immutable/assets/2.C-1MfvLQ.css"];
4
+ const fonts = [];
5
+
6
+ export { fonts, imports, index, stylesheets };
7
+ //# sourceMappingURL=2.js-LCLS1c6Z.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"2.js-B6X0GbFS.js","sources":["../../../../.svelte-kit/output/server/nodes/2.js"],"sourcesContent":["\n\nexport const index = 2;\nexport const imports = [\"_app/immutable/nodes/2.B4CjEZCb.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/D-dMdMUj.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/BR73V5PG.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/B9HdDE5n.js\",\"_app/immutable/chunks/PGG-LyPT.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/FileChangeBadge.C6wwUZJS.css\",\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/AssetSourceMenu.DOu9eU7n.css\",\"_app/immutable/assets/2.C-1MfvLQ.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpX,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,oDAAoD,CAAC,4CAA4C,CAAC,oDAAoD,CAAC,sCAAsC;AACnQ,MAAC,KAAK,GAAG;;;;"}
1
+ {"version":3,"file":"2.js-LCLS1c6Z.js","sources":["../../../../.svelte-kit/output/server/nodes/2.js"],"sourcesContent":["\n\nexport const index = 2;\nexport const imports = [\"_app/immutable/nodes/2.ba45AZgx.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/rkm4Gik6.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Cpo53v_d.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/B9HdDE5n.js\",\"_app/immutable/chunks/SCZFzB6X.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/FileChangeBadge.C6wwUZJS.css\",\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css\",\"_app/immutable/assets/2.C-1MfvLQ.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpX,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,oDAAoD,CAAC,4CAA4C,CAAC,oDAAoD,CAAC,sCAAsC;AACnQ,MAAC,KAAK,GAAG;;;;"}
@@ -0,0 +1,7 @@
1
+ const index = 3;
2
+ const imports = ["_app/immutable/nodes/3.P9WOEhGt.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/rkm4Gik6.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Cpo53v_d.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/dNO-9VOT.js","_app/immutable/chunks/SCZFzB6X.js","_app/immutable/chunks/hUfV2O0k.js"];
3
+ const stylesheets = ["_app/immutable/assets/ManifestSelector.Cue3sCA1.css","_app/immutable/assets/Popover.CCTioPJZ.css","_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css","_app/immutable/assets/3.C6xo25uI.css"];
4
+ const fonts = [];
5
+
6
+ export { fonts, imports, index, stylesheets };
7
+ //# sourceMappingURL=3.js-Bng5WtIG.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"3.js-CQVJ114p.js","sources":["../../../../.svelte-kit/output/server/nodes/3.js"],"sourcesContent":["\n\nexport const index = 3;\nexport const imports = [\"_app/immutable/nodes/3.DzWxKBWe.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/D-dMdMUj.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/BR73V5PG.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/PGG-LyPT.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/AssetSourceMenu.DOu9eU7n.css\",\"_app/immutable/assets/3.C6xo25uI.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAChV,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,4CAA4C,CAAC,oDAAoD,CAAC,sCAAsC;AAC9M,MAAC,KAAK,GAAG;;;;"}
1
+ {"version":3,"file":"3.js-Bng5WtIG.js","sources":["../../../../.svelte-kit/output/server/nodes/3.js"],"sourcesContent":["\n\nexport const index = 3;\nexport const imports = [\"_app/immutable/nodes/3.P9WOEhGt.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/rkm4Gik6.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Cpo53v_d.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/dNO-9VOT.js\",\"_app/immutable/chunks/SCZFzB6X.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/ManifestSelector.Cue3sCA1.css\",\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/AssetSourceMenu.C5W2HI4L.css\",\"_app/immutable/assets/3.C6xo25uI.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAChV,MAAC,WAAW,GAAG,CAAC,qDAAqD,CAAC,4CAA4C,CAAC,oDAAoD,CAAC,sCAAsC;AAC9M,MAAC,KAAK,GAAG;;;;"}
@@ -1,7 +1,7 @@
1
1
  const index = 4;
2
- const imports = ["_app/immutable/nodes/4.BkqPmamr.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/D-dMdMUj.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/hUfV2O0k.js"];
2
+ const imports = ["_app/immutable/nodes/4.CXvQQa7K.js","_app/immutable/chunks/YpiA5Xry.js","_app/immutable/chunks/rkm4Gik6.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Q50krHyn.js","_app/immutable/chunks/hUfV2O0k.js"];
3
3
  const stylesheets = ["_app/immutable/assets/Popover.CCTioPJZ.css","_app/immutable/assets/4.C0QkCMQ4.css"];
4
4
  const fonts = [];
5
5
 
6
6
  export { fonts, imports, index, stylesheets };
7
- //# sourceMappingURL=4.js-Bt9pLOHE.js.map
7
+ //# sourceMappingURL=4.js-BQHl-pD5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"4.js-Bt9pLOHE.js","sources":["../../../../.svelte-kit/output/server/nodes/4.js"],"sourcesContent":["\n\nexport const index = 4;\nexport const imports = [\"_app/immutable/nodes/4.BkqPmamr.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/D-dMdMUj.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/4.C0QkCMQ4.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpO,MAAC,WAAW,GAAG,CAAC,4CAA4C,CAAC,sCAAsC;AACnG,MAAC,KAAK,GAAG;;;;"}
1
+ {"version":3,"file":"4.js-BQHl-pD5.js","sources":["../../../../.svelte-kit/output/server/nodes/4.js"],"sourcesContent":["\n\nexport const index = 4;\nexport const imports = [\"_app/immutable/nodes/4.CXvQQa7K.js\",\"_app/immutable/chunks/YpiA5Xry.js\",\"_app/immutable/chunks/rkm4Gik6.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/Q50krHyn.js\",\"_app/immutable/chunks/hUfV2O0k.js\"];\nexport const stylesheets = [\"_app/immutable/assets/Popover.CCTioPJZ.css\",\"_app/immutable/assets/4.C0QkCMQ4.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpO,MAAC,WAAW,GAAG,CAAC,4CAA4C,CAAC,sCAAsC;AACnG,MAAC,KAAK,GAAG;;;;"}
@@ -1,31 +1,53 @@
1
1
  <!--
2
- The slice component hosts rendering: one component, backend chosen per use.
3
- Dispatches between the two private implementations — SliceDom (default) and
4
- SliceCanvas — which share `computeRenderCells` geometry. The DOM backend maps
5
- that geometry to one CSS border-image paint; Canvas draws the cells into one
6
- canvas backing store.
2
+ Slice renderer using the entry-based API (slicing arrives inline on the
3
+ `SliceManifestEntry`). Owns the source lifecycle (load, decode, latest-wins
4
+ commit) and draws each cell of the committed snapshot with one `drawImage`
5
+ into a backing canvas. A ResizeObserver triggers a redraw on resize; window
6
+ `resize` and DPR changes (browser zoom, moving between displays) redraw
7
+ too, and a reactive effect redraws when the entry changes — so it also
8
+ works live inside the editor.
9
+
10
+ The backing-store ratio is the devicePixelRatio FLOORED to an integer and
11
+ capped at `maxDpr` (default 2), never the exact ratio. Cell edges are
12
+ integer virtual CSS pixels, so an integer ratio lands every drawImage edge on
13
+ integer backing pixels — abutting cells cannot open an antialiased gap. On
14
+ displays with a fractional devicePixelRatio (2.625-class Androids, browser
15
+ zoom, scaled desktops) those gaps are exactly the hairlines this avoids;
16
+ the compositor applies the remainder to the finished canvas as one
17
+ upscale, where slice boundaries are plain content. Floor + cap
18
+ deliberately favor seam-freeness and backing memory over sharpness.
19
+
20
+ The measured element is the root div, not the canvas: with overdraw the
21
+ canvas is enlarged by the overdraw's destination size and offset negatively
22
+ (see `computeCanvasPaintLayout`), so the baked shadow/glow paints outside
23
+ the layout box while the root (and therefore the layout) keeps the box
24
+ size.
7
25
  -->
8
26
  <script lang="ts">
9
27
  import { onDestroy } from 'svelte';
10
28
  import type { SliceManifestEntry } from '../../core/index.js';
29
+ import {
30
+ computeCanvasPaintLayout,
31
+ computeRenderCells,
32
+ type CanvasPaintLayout
33
+ } from '../geometry.js';
34
+ import { observeBorderBoxSize } from '../observe-border-box-size.js';
11
35
  import { SliceSourceLifecycle, type LoadedSliceSnapshot } from '../slice-source-lifecycle.js';
12
- import SliceDom from './SliceDom.svelte';
13
- import SliceCanvas from './SliceCanvas.svelte';
14
36
 
15
37
  interface Props {
16
38
  src: SliceManifestEntry;
17
39
  /**
18
- * Rendering backend. `dom` (default) paints the shared slice geometry as
19
- * one CSS `border-image`; `canvas` draws the same cells into one `<canvas>`
20
- * with a device-pixel-ratio-sized backing store.
40
+ * Upper bound of the canvas backing-store ratio (floored itself). The
41
+ * default of 2 is rarely distinguishable and keeps backing memory bounded.
21
42
  */
22
- backend?: 'dom' | 'canvas';
43
+ maxDpr?: number;
23
44
  /** Accessible label for the rendered graphic. */
24
45
  alt?: string;
25
46
  class?: string;
26
47
  }
27
48
 
28
- let { src, backend = 'dom', alt = '', class: className = '' }: Props = $props();
49
+ let { src, maxDpr = 2, alt = '', class: className = '' }: Props = $props();
50
+
29
51
  let snapshot = $state.raw<LoadedSliceSnapshot | null>(null);
30
52
  const sourceLifecycle = new SliceSourceLifecycle((loaded) => {
31
53
  snapshot = loaded;
@@ -36,10 +58,155 @@
36
58
  });
37
59
 
38
60
  onDestroy(() => sourceLifecycle.dispose());
61
+
62
+ let root = $state<HTMLDivElement>();
63
+ let canvas = $state<HTMLCanvasElement>();
64
+ let boxWidth = $state(0);
65
+ let boxHeight = $state(0);
66
+ let devicePixelRatio = $state(1);
67
+ // Bumped by window `resize` so the draw effect re-runs even when neither the
68
+ // box nor the entry changed (belt and braces alongside the ResizeObserver).
69
+ let redrawTick = $state(0);
70
+
71
+ // Track the display's devicePixelRatio: a resolution media query fires
72
+ // exactly when the DPR leaves the tracked value (browser zoom, moving the
73
+ // window to another display). The tracked state must be READ first — a
74
+ // state the effect writes before reading is deliberately not a dependency
75
+ // in Svelte, so a write-first version would never re-arm the query after
76
+ // the first transition. Reconciling via update() converges in one extra
77
+ // run when the real DPR drifted (mount, or a change event).
78
+ $effect(() => {
79
+ const trackedRatio = devicePixelRatio;
80
+ const query = window.matchMedia(`(resolution: ${trackedRatio}dppx)`);
81
+ const update = () => {
82
+ devicePixelRatio = window.devicePixelRatio || 1;
83
+ };
84
+ update();
85
+ query.addEventListener('change', update);
86
+ return () => query.removeEventListener('change', update);
87
+ });
88
+
89
+ $effect(() => {
90
+ const element = root;
91
+ if (!element) return;
92
+ return observeBorderBoxSize(element, (width, height) => {
93
+ boxWidth = width;
94
+ boxHeight = height;
95
+ });
96
+ });
97
+
98
+ const emptyLayout: CanvasPaintLayout = {
99
+ renderWidth: 0,
100
+ renderHeight: 0,
101
+ cssLeft: 0,
102
+ cssTop: 0,
103
+ cssWidth: 0,
104
+ cssHeight: 0,
105
+ backingWidth: 0,
106
+ backingHeight: 0,
107
+ originX: 0,
108
+ originY: 0
109
+ };
110
+ // The ratio the backing store and every draw use; the css placement is
111
+ // unaffected, so the compositor bridges any difference on the whole texture.
112
+ const renderRatio = $derived.by(() => {
113
+ const cap = Math.max(1, Math.floor(maxDpr));
114
+ return Math.min(cap, Math.max(1, Math.floor(devicePixelRatio)));
115
+ });
116
+
117
+ const layout = $derived.by(() => {
118
+ const current = snapshot;
119
+ return current
120
+ ? computeCanvasPaintLayout(current.entry, boxWidth, boxHeight, renderRatio)
121
+ : emptyLayout;
122
+ });
123
+
124
+ // Redraw only when a committed snapshot, the box, DPR, or window changes.
125
+ $effect(() => {
126
+ const current = snapshot;
127
+ const currentLayout = layout;
128
+ void redrawTick;
129
+ draw(current, currentLayout);
130
+ });
131
+
132
+ function draw(current: LoadedSliceSnapshot | null, currentLayout: CanvasPaintLayout): void {
133
+ const element = canvas;
134
+ if (!element) return;
135
+ if (!current || boxWidth === 0 || boxHeight === 0) {
136
+ element.width = 0;
137
+ element.height = 0;
138
+ return;
139
+ }
140
+
141
+ element.width = currentLayout.backingWidth;
142
+ element.height = currentLayout.backingHeight;
143
+
144
+ const context = element.getContext('2d');
145
+ if (!context) return;
146
+ // Origin at the layout box's top-left, so the (possibly negative) cell
147
+ // coordinates from computeRenderCells apply directly.
148
+ context.setTransform(
149
+ renderRatio,
150
+ 0,
151
+ 0,
152
+ renderRatio,
153
+ currentLayout.originX,
154
+ currentLayout.originY
155
+ );
156
+ context.clearRect(
157
+ currentLayout.cssLeft,
158
+ currentLayout.cssTop,
159
+ currentLayout.cssWidth,
160
+ currentLayout.cssHeight
161
+ );
162
+
163
+ for (const cell of computeRenderCells(
164
+ current.entry,
165
+ currentLayout.renderWidth,
166
+ currentLayout.renderHeight
167
+ )) {
168
+ context.drawImage(
169
+ current.image,
170
+ cell.sx,
171
+ cell.sy,
172
+ cell.sw,
173
+ cell.sh,
174
+ cell.dx,
175
+ cell.dy,
176
+ cell.dw,
177
+ cell.dh
178
+ );
179
+ }
180
+ }
39
181
  </script>
40
182
 
41
- {#if backend === 'canvas'}
42
- <SliceCanvas {snapshot} {alt} class={className} />
43
- {:else}
44
- <SliceDom {snapshot} {alt} class={className} />
45
- {/if}
183
+ <svelte:window onresize={() => (redrawTick += 1)} />
184
+
185
+ <div
186
+ bind:this={root}
187
+ class="fundus-slice {className}"
188
+ role={alt ? 'img' : undefined}
189
+ aria-label={alt || undefined}
190
+ >
191
+ <canvas
192
+ bind:this={canvas}
193
+ style:left="{layout.cssLeft}px"
194
+ style:top="{layout.cssTop}px"
195
+ style:width="{layout.cssWidth}px"
196
+ style:height="{layout.cssHeight}px"
197
+ ></canvas>
198
+ </div>
199
+
200
+ <style>
201
+ .fundus-slice {
202
+ position: relative;
203
+ width: 100%;
204
+ height: 100%;
205
+ }
206
+
207
+ canvas {
208
+ position: absolute;
209
+ display: block;
210
+ pointer-events: none;
211
+ }
212
+ </style>
@@ -2,11 +2,10 @@ import type { SliceManifestEntry } from '../../core/index.js';
2
2
  interface Props {
3
3
  src: SliceManifestEntry;
4
4
  /**
5
- * Rendering backend. `dom` (default) paints the shared slice geometry as
6
- * one CSS `border-image`; `canvas` draws the same cells into one `<canvas>`
7
- * with a device-pixel-ratio-sized backing store.
5
+ * Upper bound of the canvas backing-store ratio (floored itself). The
6
+ * default of 2 is rarely distinguishable and keeps backing memory bounded.
8
7
  */
9
- backend?: 'dom' | 'canvas';
8
+ maxDpr?: number;
10
9
  /** Accessible label for the rendered graphic. */
11
10
  alt?: string;
12
11
  class?: string;
@@ -58,22 +58,27 @@ export declare function effectiveOverdraw(entry: SliceManifestEntry): SliceInset
58
58
  */
59
59
  export declare function computeOverdrawDestination(entry: SliceManifestEntry, boxWidth: number, boxHeight: number): SliceInsets;
60
60
  /**
61
- * How the canvas backend's `<canvas>` relates to the layout box: with overdraw
61
+ * How the slice renderer's `<canvas>` relates to the layout box: with overdraw
62
62
  * the canvas is enlarged by the overdraw's destination size and offset
63
63
  * negatively, so the baked shadow/glow paints outside the layout box while the
64
64
  * wrapper (and therefore the layout) keeps the box size. The backing store is
65
- * the CSS size × `devicePixelRatio` (rounded) for crispness, and the paint
66
- * origin sits at the layout box's top-left in device pixels — so the (possibly
67
- * negative) cell coordinates from `computeRenderCells` apply directly.
65
+ * the rounded virtual CSS size × the integer render ratio. This matches the
66
+ * integer final edges from `computeRenderCells`; the browser scales the
67
+ * completed texture to the possibly fractional CSS size. The paint origin sits
68
+ * at the layout box's top-left in backing pixels — so the (possibly negative)
69
+ * cell coordinates from `computeRenderCells` apply directly.
68
70
  */
69
71
  export interface CanvasPaintLayout {
72
+ /** Integer virtual layout-box size used by `computeRenderCells`. */
73
+ renderWidth: number;
74
+ renderHeight: number;
70
75
  /** CSS offset of the canvas within the wrapper (0 or negative — overdraw). */
71
76
  cssLeft: number;
72
77
  cssTop: number;
73
- /** CSS size of the canvas (box expanded by the overdraw's destination size). */
78
+ /** CSS size of the scaled canvas, including overdraw. */
74
79
  cssWidth: number;
75
80
  cssHeight: number;
76
- /** Backing-store size in device pixels (CSS size × devicePixelRatio). */
81
+ /** Backing-store size in pixels (rounded virtual CSS size × render ratio). */
77
82
  backingWidth: number;
78
83
  backingHeight: number;
79
84
  /** Paint origin (the layout box's top-left) in device pixels. */
@@ -82,10 +87,11 @@ export interface CanvasPaintLayout {
82
87
  }
83
88
  /**
84
89
  * The canvas geometry for a slice filling a `boxWidth × boxHeight` layout box
85
- * at the given `devicePixelRatio` (the display's, not the asset's export
86
- * scale). Pure — the canvas backend derives every size and offset from this.
90
+ * at the given integer render ratio (the floored/capped display DPR, not the
91
+ * asset's export scale). Pure — the slice renderer derives every size and
92
+ * offset from this.
87
93
  */
88
- export declare function computeCanvasPaintLayout(entry: SliceManifestEntry, boxWidth: number, boxHeight: number, devicePixelRatio: number): CanvasPaintLayout;
94
+ export declare function computeCanvasPaintLayout(entry: SliceManifestEntry, boxWidth: number, boxHeight: number, renderRatio: number): CanvasPaintLayout;
89
95
  /**
90
96
  * Compute the cells to paint for a slice filling a `boxWidth × boxHeight` box.
91
97
  * Returns an empty array for a zero-size box. With overdraw the cells cover the
@@ -85,23 +85,30 @@ export function computeOverdrawDestination(entry, boxWidth, boxHeight) {
85
85
  }
86
86
  /**
87
87
  * The canvas geometry for a slice filling a `boxWidth × boxHeight` layout box
88
- * at the given `devicePixelRatio` (the display's, not the asset's export
89
- * scale). Pure — the canvas backend derives every size and offset from this.
88
+ * at the given integer render ratio (the floored/capped display DPR, not the
89
+ * asset's export scale). Pure — the slice renderer derives every size and
90
+ * offset from this.
90
91
  */
91
- export function computeCanvasPaintLayout(entry, boxWidth, boxHeight, devicePixelRatio) {
92
- const overdrawDestination = computeOverdrawDestination(entry, boxWidth, boxHeight);
93
- const cssWidth = boxWidth + overdrawDestination.left + overdrawDestination.right;
94
- const cssHeight = boxHeight + overdrawDestination.top + overdrawDestination.bottom;
92
+ export function computeCanvasPaintLayout(entry, boxWidth, boxHeight, renderRatio) {
93
+ const renderWidth = boxWidth > 0 ? Math.max(1, Math.round(boxWidth)) : 0;
94
+ const renderHeight = boxHeight > 0 ? Math.max(1, Math.round(boxHeight)) : 0;
95
+ const overdrawDestination = computeOverdrawDestination(entry, renderWidth, renderHeight);
96
+ const virtualWidth = renderWidth + overdrawDestination.left + overdrawDestination.right;
97
+ const virtualHeight = renderHeight + overdrawDestination.top + overdrawDestination.bottom;
98
+ const horizontalScale = renderWidth > 0 ? boxWidth / renderWidth : 1;
99
+ const verticalScale = renderHeight > 0 ? boxHeight / renderHeight : 1;
95
100
  return {
101
+ renderWidth,
102
+ renderHeight,
96
103
  // `+ 0` normalizes the negative zero a zero overdraw would produce.
97
- cssLeft: -overdrawDestination.left + 0,
98
- cssTop: -overdrawDestination.top + 0,
99
- cssWidth,
100
- cssHeight,
101
- backingWidth: Math.round(cssWidth * devicePixelRatio),
102
- backingHeight: Math.round(cssHeight * devicePixelRatio),
103
- originX: overdrawDestination.left * devicePixelRatio,
104
- originY: overdrawDestination.top * devicePixelRatio
104
+ cssLeft: -overdrawDestination.left * horizontalScale + 0,
105
+ cssTop: -overdrawDestination.top * verticalScale + 0,
106
+ cssWidth: virtualWidth * horizontalScale,
107
+ cssHeight: virtualHeight * verticalScale,
108
+ backingWidth: virtualWidth * renderRatio,
109
+ backingHeight: virtualHeight * renderRatio,
110
+ originX: overdrawDestination.left * renderRatio,
111
+ originY: overdrawDestination.top * renderRatio
105
112
  };
106
113
  }
107
114
  /** Cumulative, rounded edges so adjacent cells abut exactly on integer pixels. */
@@ -1,2 +1,2 @@
1
- /** Observe an element's layout border-box size in whole CSS pixels. */
1
+ /** Observe an element's layout border-box size without discarding fractional CSS pixels. */
2
2
  export declare function observeBorderBoxSize(element: HTMLElement, onSize: (width: number, height: number) => void): () => void;
@@ -1,10 +1,10 @@
1
- /** Observe an element's layout border-box size in whole CSS pixels. */
1
+ /** Observe an element's layout border-box size without discarding fractional CSS pixels. */
2
2
  export function observeBorderBoxSize(element, onSize) {
3
3
  const observer = new ResizeObserver((entries) => {
4
4
  // Measure layout, not getBoundingClientRect(): transforms must not freeze
5
5
  // render geometry after an animation because they do not retrigger resize.
6
6
  const size = entries[0]?.borderBoxSize?.[0];
7
- onSize(Math.round(size?.inlineSize ?? element.offsetWidth), Math.round(size?.blockSize ?? element.offsetHeight));
7
+ onSize(size?.inlineSize ?? element.offsetWidth, size?.blockSize ?? element.offsetHeight);
8
8
  });
9
9
  observer.observe(element);
10
10
  return () => observer.disconnect();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fundus",
3
- "version": "0.12.2",
3
+ "version": "0.13.0",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",