fundus 0.17.2 → 0.19.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 (221) hide show
  1. package/README.md +60 -121
  2. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css +1 -0
  3. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css.br +0 -0
  4. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/{3.66PJT3JC.css → 3.q3CUOEpz.css} +1 -1
  6. package/build/client/_app/immutable/assets/3.q3CUOEpz.css.br +0 -0
  7. package/build/client/_app/immutable/assets/3.q3CUOEpz.css.gz +0 -0
  8. package/build/client/_app/immutable/assets/{AssetSourceMenu.Buj2UxUg.css → AssetSourceMenu.CgyMTAb6.css} +1 -1
  9. package/build/client/_app/immutable/assets/AssetSourceMenu.CgyMTAb6.css.br +0 -0
  10. package/build/client/_app/immutable/assets/AssetSourceMenu.CgyMTAb6.css.gz +0 -0
  11. package/build/client/_app/immutable/chunks/Bly9uffh.js +1 -0
  12. package/build/client/_app/immutable/chunks/Bly9uffh.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/Bly9uffh.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/{R0o69z6O.js → BpsKkIFc.js} +1 -1
  15. package/build/client/_app/immutable/chunks/BpsKkIFc.js.br +2 -0
  16. package/build/client/_app/immutable/chunks/BpsKkIFc.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/{jEVVu5G9.js → CrIZjnDr.js} +1 -1
  18. package/build/client/_app/immutable/chunks/CrIZjnDr.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/CrIZjnDr.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/ZGU9Utak.js +108 -0
  21. package/build/client/_app/immutable/chunks/ZGU9Utak.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/ZGU9Utak.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/lw3KP4og.js +2 -0
  24. package/build/client/_app/immutable/chunks/lw3KP4og.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/lw3KP4og.js.gz +0 -0
  26. package/build/client/_app/immutable/entry/{app.DxYfHxs-.js → app.D-lO1MC-.js} +2 -2
  27. package/build/client/_app/immutable/entry/app.D-lO1MC-.js.br +0 -0
  28. package/build/client/_app/immutable/entry/app.D-lO1MC-.js.gz +0 -0
  29. package/build/client/_app/immutable/entry/start.BrSEFrid.js +1 -0
  30. package/build/client/_app/immutable/entry/start.BrSEFrid.js.br +1 -0
  31. package/build/client/_app/immutable/entry/start.BrSEFrid.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{0.Do0MsVUC.js → 0.BPGg3A-F.js} +1 -1
  33. package/build/client/_app/immutable/nodes/0.BPGg3A-F.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/0.BPGg3A-F.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{1.DhfAdUbg.js → 1.-VJ5Mlss.js} +1 -1
  36. package/build/client/_app/immutable/nodes/1.-VJ5Mlss.js.br +1 -0
  37. package/build/client/_app/immutable/nodes/1.-VJ5Mlss.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/2.Dhyvb4bF.js +3 -0
  39. package/build/client/_app/immutable/nodes/2.Dhyvb4bF.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/2.Dhyvb4bF.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/3.D9Fgsq-b.js +1 -0
  42. package/build/client/_app/immutable/nodes/3.D9Fgsq-b.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/3.D9Fgsq-b.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/{4.gPNAednG.js → 4.DErtysFP.js} +1 -1
  45. package/build/client/_app/immutable/nodes/4.DErtysFP.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/4.DErtysFP.js.gz +0 -0
  47. package/build/client/_app/version.json +1 -1
  48. package/build/client/_app/version.json.br +0 -0
  49. package/build/client/_app/version.json.gz +0 -0
  50. package/build/handler.js +7 -7
  51. package/build/index.js +7 -7
  52. package/build/server/chunks/chunks/{context.js-Dh0ibRIF.js → context.js-BIgcUcEl.js} +216 -604
  53. package/build/server/chunks/chunks/context.js-BIgcUcEl.js.map +1 -0
  54. package/build/server/chunks/chunks/{contract.js-_LTMZBo2.js → contract.js-B6KBK8D9.js} +59 -95
  55. package/build/server/chunks/chunks/contract.js-B6KBK8D9.js.map +1 -0
  56. package/build/server/chunks/chunks/{core.js-CTyKR4bu.js → core.js-Bp-ReC60.js} +38 -38
  57. package/build/server/chunks/chunks/core.js-Bp-ReC60.js.map +1 -0
  58. package/build/server/chunks/chunks/dependencies.js-pUkjICr5.js +45 -0
  59. package/build/server/chunks/chunks/dependencies.js-pUkjICr5.js.map +1 -0
  60. package/build/server/chunks/chunks/{exports.js-gUMFfqhw.js → exports.js-bhKV7cEL.js} +2 -2
  61. package/build/server/chunks/chunks/{exports.js-gUMFfqhw.js.map → exports.js-bhKV7cEL.js.map} +1 -1
  62. package/build/server/chunks/chunks/{http.js-BiqUcAuu.js → http.js-BTq44nR5.js} +2 -2
  63. package/build/server/chunks/chunks/{http.js-BiqUcAuu.js.map → http.js-BTq44nR5.js.map} +1 -1
  64. package/build/server/chunks/chunks/{internal.js-DvC1GD8s.js → internal.js-7MmaxxwZ.js} +3 -3
  65. package/build/server/chunks/chunks/{internal.js-DvC1GD8s.js.map → internal.js-7MmaxxwZ.js.map} +1 -1
  66. package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -1
  67. package/build/server/chunks/chunks/{manifest-membership.js-at1ixQdW.js → manifest-membership.js-Dj3WwZgz.js} +2 -2
  68. package/build/server/chunks/chunks/{manifest-membership.js-at1ixQdW.js.map → manifest-membership.js-Dj3WwZgz.js.map} +1 -1
  69. package/build/server/chunks/chunks/{raw-reconciliation.js-CUH8IIJx.js → raw-reconciliation.js-mWOAOdgL.js} +3 -3
  70. package/build/server/chunks/chunks/raw-reconciliation.js-mWOAOdgL.js.map +1 -0
  71. package/build/server/chunks/chunks/{raw-reconciliation2.js-z4xl5zw2.js → raw-reconciliation2.js-Bo1jJgvd.js} +2 -2
  72. package/build/server/chunks/chunks/{raw-reconciliation2.js-z4xl5zw2.js.map → raw-reconciliation2.js-Bo1jJgvd.js.map} +1 -1
  73. package/build/server/chunks/chunks/{shared.js-nXNT--BO.js → shared.js-B0m3s2U9.js} +2 -2
  74. package/build/server/chunks/chunks/{shared.js-nXNT--BO.js.map → shared.js-B0m3s2U9.js.map} +1 -1
  75. package/build/server/chunks/chunks/{utils.js-C5pr7OK-.js → utils.js-BXV0zq44.js} +3 -3
  76. package/build/server/chunks/chunks/{utils.js-C5pr7OK-.js.map → utils.js-BXV0zq44.js.map} +1 -1
  77. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-CdDjuW0r.js → _server.ts.js-B_aa_zh7.js} +6 -6
  78. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-CdDjuW0r.js.map → _server.ts.js-B_aa_zh7.js.map} +1 -1
  79. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-OWM1eORG.js → _server.ts.js-DbEPdkbO.js} +8 -8
  80. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-OWM1eORG.js.map → _server.ts.js-DbEPdkbO.js.map} +1 -1
  81. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/{_server.ts.js-DoG-7ZpZ.js → _server.ts.js-BzA96yBM.js} +8 -8
  82. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/{_server.ts.js-DoG-7ZpZ.js.map → _server.ts.js-BzA96yBM.js.map} +1 -1
  83. package/build/server/chunks/entries/endpoints/api/assets/_id_/reimport/{_server.ts.js-CAWjVeGd.js → _server.ts.js-fQAXFRLh.js} +8 -8
  84. package/build/server/chunks/entries/endpoints/api/assets/_id_/reimport/{_server.ts.js-CAWjVeGd.js.map → _server.ts.js-fQAXFRLh.js.map} +1 -1
  85. package/build/server/chunks/entries/endpoints/api/assets/_id_/retag/{_server.ts.js-CqS4aALY.js → _server.ts.js-RTBrlhk5.js} +8 -8
  86. package/build/server/chunks/entries/endpoints/api/assets/_id_/retag/{_server.ts.js-CqS4aALY.js.map → _server.ts.js-RTBrlhk5.js.map} +1 -1
  87. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-Bo_EsYXJ.js → _server.ts.js-Baz4gPRd.js} +8 -8
  88. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-Bo_EsYXJ.js.map → _server.ts.js-Baz4gPRd.js.map} +1 -1
  89. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-DW4w0XAr.js → _server.ts.js-CnqdPxWQ.js} +8 -8
  90. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-DW4w0XAr.js.map → _server.ts.js-CnqdPxWQ.js.map} +1 -1
  91. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-_MiNPnSy.js → _server.ts.js-bvrtSRDz.js} +8 -8
  92. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-_MiNPnSy.js.map → _server.ts.js-bvrtSRDz.js.map} +1 -1
  93. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-DwbrQnBc.js → _server.ts.js-cgYcVXgU.js} +8 -8
  94. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-DwbrQnBc.js.map → _server.ts.js-cgYcVXgU.js.map} +1 -1
  95. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-CEnHQf3b.js → _server.ts.js-DbXw3YEr.js} +8 -8
  96. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-CEnHQf3b.js.map → _server.ts.js-DbXw3YEr.js.map} +1 -1
  97. package/build/server/chunks/entries/endpoints/api/imports/{_server.ts.js-BZDuJZtF.js → _server.ts.js-D0PEYlzG.js} +8 -8
  98. package/build/server/chunks/entries/endpoints/api/imports/{_server.ts.js-BZDuJZtF.js.map → _server.ts.js-D0PEYlzG.js.map} +1 -1
  99. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-DRgdpKKd.js → _server.ts.js-Dt9Wfgs7.js} +8 -8
  100. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-DRgdpKKd.js.map → _server.ts.js-Dt9Wfgs7.js.map} +1 -1
  101. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-CP5QyIhz.js → _server.ts.js-BBuZYakQ.js} +8 -8
  102. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-CP5QyIhz.js.map → _server.ts.js-BBuZYakQ.js.map} +1 -1
  103. package/build/server/chunks/entries/endpoints/api/raw/adopt/{_server.ts.js-BKEvt065.js → _server.ts.js-DQ_CWMTu.js} +8 -8
  104. package/build/server/chunks/entries/endpoints/api/raw/adopt/{_server.ts.js-BKEvt065.js.map → _server.ts.js-DQ_CWMTu.js.map} +1 -1
  105. package/build/server/chunks/entries/endpoints/api/raw/edited/accept/{_server.ts.js-C_zihkDS.js → _server.ts.js-B3TVoDCl.js} +8 -8
  106. package/build/server/chunks/entries/endpoints/api/raw/edited/accept/{_server.ts.js-C_zihkDS.js.map → _server.ts.js-B3TVoDCl.js.map} +1 -1
  107. package/build/server/chunks/entries/endpoints/api/raw/edited/dismiss/{_server.ts.js-watkBmy6.js → _server.ts.js--2C2x6Q0.js} +8 -8
  108. package/build/server/chunks/entries/endpoints/api/raw/edited/dismiss/{_server.ts.js-watkBmy6.js.map → _server.ts.js--2C2x6Q0.js.map} +1 -1
  109. package/build/server/chunks/entries/endpoints/api/reconcile/{_server.ts.js-YtumLIou.js → _server.ts.js-DD2Hz15k.js} +8 -8
  110. package/build/server/chunks/entries/endpoints/api/reconcile/{_server.ts.js-YtumLIou.js.map → _server.ts.js-DD2Hz15k.js.map} +1 -1
  111. package/build/server/chunks/entries/endpoints/api/reveal/{_server.ts.js-Dkouuu-M.js → _server.ts.js-Ei98ilB5.js} +8 -8
  112. package/build/server/chunks/entries/endpoints/api/reveal/{_server.ts.js-Dkouuu-M.js.map → _server.ts.js-Ei98ilB5.js.map} +1 -1
  113. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-DwsEQeuf.js → _server.ts.js-NNuDGwyK.js} +8 -8
  114. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-DwsEQeuf.js.map → _server.ts.js-NNuDGwyK.js.map} +1 -1
  115. package/build/server/chunks/entries/endpoints/api/usage/{_server.ts.js-CdQxfhV3.js → _server.ts.js-6_Wl_k0H.js} +8 -8
  116. package/build/server/chunks/entries/endpoints/api/usage/{_server.ts.js-CdQxfhV3.js.map → _server.ts.js-6_Wl_k0H.js.map} +1 -1
  117. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-DDdMocWj.js → _server.ts.js-DkYQlG9U.js} +6 -6
  118. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-DDdMocWj.js.map → _server.ts.js-DkYQlG9U.js.map} +1 -1
  119. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-DbzjbH32.js → _server.ts.js-Dft0Zgh3.js} +8 -8
  120. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-DbzjbH32.js.map → _server.ts.js-Dft0Zgh3.js.map} +1 -1
  121. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-K_JbXZsU.js → _server.ts.js-rlV0QRQS.js} +8 -8
  122. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-K_JbXZsU.js.map → _server.ts.js-rlV0QRQS.js.map} +1 -1
  123. package/build/server/chunks/entries/{hooks.server.js-DgZAVFbQ.js → hooks.server.js-C345JVQ2.js} +7 -7
  124. package/build/server/chunks/entries/{hooks.server.js-DgZAVFbQ.js.map → hooks.server.js-C345JVQ2.js.map} +1 -1
  125. package/build/server/chunks/{handler-C4m7sKKb.js → handler-C_S3CtEF.js} +5 -5
  126. package/build/server/chunks/{handler-C4m7sKKb.js.map → handler-C_S3CtEF.js.map} +1 -1
  127. package/build/server/chunks/{index.js-pAnkrzRH.js → index.js-CSCxgyyg.js} +5 -5
  128. package/build/server/chunks/{index.js-pAnkrzRH.js.map → index.js-CSCxgyyg.js.map} +1 -1
  129. package/build/server/chunks/{manifest.js-CXQHeYnS.js → manifest.js-CO6AjAUm.js} +30 -30
  130. package/build/server/chunks/{manifest.js-CXQHeYnS.js.map → manifest.js-CO6AjAUm.js.map} +1 -1
  131. package/build/server/chunks/nodes/{0.js-lmQMhWZd.js → 0.js-CRc8onmc.js} +2 -2
  132. package/build/server/chunks/nodes/{0.js-lmQMhWZd.js.map → 0.js-CRc8onmc.js.map} +1 -1
  133. package/build/server/chunks/nodes/1.js-CZm_Doa7.js +7 -0
  134. package/build/server/chunks/nodes/{1.js-CdH3UJI2.js.map → 1.js-CZm_Doa7.js.map} +1 -1
  135. package/build/server/chunks/nodes/2.js-B92vn1Hu.js +7 -0
  136. package/build/server/chunks/nodes/2.js-B92vn1Hu.js.map +1 -0
  137. package/build/server/chunks/nodes/3.js-C14BP7Jm.js +7 -0
  138. package/build/server/chunks/nodes/3.js-C14BP7Jm.js.map +1 -0
  139. package/build/server/chunks/nodes/4.js-BLNdVCa1.js +7 -0
  140. package/build/server/chunks/nodes/{4.js-DtgDNAZF.js.map → 4.js-BLNdVCa1.js.map} +1 -1
  141. package/dist/config.d.ts +5 -3
  142. package/dist/config.js +3 -2
  143. package/dist/core/api-types.d.ts +7 -22
  144. package/dist/core/config.d.ts +8 -82
  145. package/dist/core/config.js +0 -9
  146. package/dist/core/dependencies.d.ts +52 -0
  147. package/dist/core/dependencies.js +56 -0
  148. package/dist/core/dependency-validation.d.ts +17 -0
  149. package/dist/core/dependency-validation.js +19 -0
  150. package/dist/core/index.d.ts +8 -10
  151. package/dist/core/index.js +4 -5
  152. package/dist/core/library.d.ts +0 -19
  153. package/dist/core/library.js +4 -4
  154. package/dist/core/manifest-membership.d.ts +2 -2
  155. package/dist/core/reference-graph.d.ts +3 -3
  156. package/dist/server/build.js +12 -26
  157. package/dist/server/check.d.ts +3 -13
  158. package/dist/server/check.js +33 -112
  159. package/dist/server/codegen.d.ts +1 -3
  160. package/dist/server/codegen.js +0 -18
  161. package/dist/server/config-loader.d.ts +10 -33
  162. package/dist/server/config-loader.js +87 -156
  163. package/dist/server/index.d.ts +1 -1
  164. package/dist/server/index.js +1 -1
  165. package/dist/server/library-store.d.ts +1 -11
  166. package/dist/server/library-store.js +60 -42
  167. package/dist/server/operations.js +54 -161
  168. package/package.json +1 -1
  169. package/build/client/_app/immutable/assets/2.X44Wyac-.css +0 -1
  170. package/build/client/_app/immutable/assets/2.X44Wyac-.css.br +0 -0
  171. package/build/client/_app/immutable/assets/2.X44Wyac-.css.gz +0 -0
  172. package/build/client/_app/immutable/assets/3.66PJT3JC.css.br +0 -0
  173. package/build/client/_app/immutable/assets/3.66PJT3JC.css.gz +0 -0
  174. package/build/client/_app/immutable/assets/AssetSourceMenu.Buj2UxUg.css.br +0 -0
  175. package/build/client/_app/immutable/assets/AssetSourceMenu.Buj2UxUg.css.gz +0 -0
  176. package/build/client/_app/immutable/chunks/0SQyBKXe.js +0 -108
  177. package/build/client/_app/immutable/chunks/0SQyBKXe.js.br +0 -0
  178. package/build/client/_app/immutable/chunks/0SQyBKXe.js.gz +0 -0
  179. package/build/client/_app/immutable/chunks/DXiUbZ9S.js +0 -2
  180. package/build/client/_app/immutable/chunks/DXiUbZ9S.js.br +0 -0
  181. package/build/client/_app/immutable/chunks/DXiUbZ9S.js.gz +0 -0
  182. package/build/client/_app/immutable/chunks/R0o69z6O.js.br +0 -0
  183. package/build/client/_app/immutable/chunks/R0o69z6O.js.gz +0 -0
  184. package/build/client/_app/immutable/chunks/TrnW_5ju.js +0 -1
  185. package/build/client/_app/immutable/chunks/TrnW_5ju.js.br +0 -0
  186. package/build/client/_app/immutable/chunks/TrnW_5ju.js.gz +0 -0
  187. package/build/client/_app/immutable/chunks/jEVVu5G9.js.br +0 -0
  188. package/build/client/_app/immutable/chunks/jEVVu5G9.js.gz +0 -0
  189. package/build/client/_app/immutable/entry/app.DxYfHxs-.js.br +0 -0
  190. package/build/client/_app/immutable/entry/app.DxYfHxs-.js.gz +0 -0
  191. package/build/client/_app/immutable/entry/start.CdM7ozdO.js +0 -1
  192. package/build/client/_app/immutable/entry/start.CdM7ozdO.js.br +0 -0
  193. package/build/client/_app/immutable/entry/start.CdM7ozdO.js.gz +0 -0
  194. package/build/client/_app/immutable/nodes/0.Do0MsVUC.js.br +0 -0
  195. package/build/client/_app/immutable/nodes/0.Do0MsVUC.js.gz +0 -0
  196. package/build/client/_app/immutable/nodes/1.DhfAdUbg.js.br +0 -1
  197. package/build/client/_app/immutable/nodes/1.DhfAdUbg.js.gz +0 -0
  198. package/build/client/_app/immutable/nodes/2.lLNAdU5s.js +0 -3
  199. package/build/client/_app/immutable/nodes/2.lLNAdU5s.js.br +0 -0
  200. package/build/client/_app/immutable/nodes/2.lLNAdU5s.js.gz +0 -0
  201. package/build/client/_app/immutable/nodes/3.DA8xzCvA.js +0 -1
  202. package/build/client/_app/immutable/nodes/3.DA8xzCvA.js.br +0 -0
  203. package/build/client/_app/immutable/nodes/3.DA8xzCvA.js.gz +0 -0
  204. package/build/client/_app/immutable/nodes/4.gPNAednG.js.br +0 -0
  205. package/build/client/_app/immutable/nodes/4.gPNAednG.js.gz +0 -0
  206. package/build/server/chunks/chunks/context.js-Dh0ibRIF.js.map +0 -1
  207. package/build/server/chunks/chunks/contract.js-_LTMZBo2.js.map +0 -1
  208. package/build/server/chunks/chunks/core.js-CTyKR4bu.js.map +0 -1
  209. package/build/server/chunks/chunks/raw-reconciliation.js-CUH8IIJx.js.map +0 -1
  210. package/build/server/chunks/nodes/1.js-CdH3UJI2.js +0 -7
  211. package/build/server/chunks/nodes/2.js-BHnsJqcE.js +0 -7
  212. package/build/server/chunks/nodes/2.js-BHnsJqcE.js.map +0 -1
  213. package/build/server/chunks/nodes/3.js-cR9NdrYS.js +0 -7
  214. package/build/server/chunks/nodes/3.js-cR9NdrYS.js.map +0 -1
  215. package/build/server/chunks/nodes/4.js-DtgDNAZF.js +0 -7
  216. package/dist/core/library-validation.d.ts +0 -13
  217. package/dist/core/library-validation.js +0 -48
  218. package/dist/core/package-declaration.d.ts +0 -43
  219. package/dist/core/package-declaration.js +0 -80
  220. package/dist/core/package-merge.d.ts +0 -65
  221. package/dist/core/package-merge.js +0 -173
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js-Bp-ReC60.js","sources":["../../../../.svelte-kit/output/server/chunks/core.js"],"sourcesContent":["/** Fundus-owned file that preserves explicit empty folders in source control. */\nvar FOLDER_SENTINEL = \".gitkeep\";\nvar CONTROL_CHARACTERS$1 = /[\\u0000-\\u001f\\u007f]/;\nvar WINDOWS_FORBIDDEN_CHARACTERS$1 = /[<>:\"|?*]/;\nvar WINDOWS_RESERVED_NAME$1 = /^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\\..*)?$/i;\n/** Validate one human-facing folder name (a single path segment). */\nfunction folderNameError(name) {\n\tif (name.length === 0) return \"Folder names must not be empty.\";\n\tif (name !== name.trim()) return \"Folder names must not start or end with whitespace.\";\n\tif (name === \".\" || name === \"..\") return `\"${name}\" is not a valid folder name.`;\n\tif (name.includes(\"/\") || name.includes(\"\\\\\")) return \"Folder names must not contain path separators.\";\n\tif (CONTROL_CHARACTERS$1.test(name)) return \"Folder names must not contain control characters.\";\n\tif (WINDOWS_FORBIDDEN_CHARACTERS$1.test(name)) return \"Folder names must not contain Windows-reserved characters (: * ? \\\" < > |).\";\n\tif (name.endsWith(\".\")) return \"Folder names must not end with a dot.\";\n\tif (name.toLocaleLowerCase(\"en-US\") === \"root\") return `\"${name}\" is reserved for the implicit Fundus root folder.`;\n\tif (name.toLocaleLowerCase(\"en-US\") === \".gitkeep\") return `\"${name}\" is reserved for Fundus folder management.`;\n\tif (WINDOWS_RESERVED_NAME$1.test(name)) return `\"${name}\" is a reserved filesystem name.`;\n\treturn null;\n}\n/** Normalize a validated, portable relative folder path to NFC + POSIX separators. */\nfunction normalizeFolderPath(path) {\n\treturn path.split(\"/\").map((segment) => segment.normalize(\"NFC\")).join(\"/\");\n}\n/** Validate a non-root, POSIX-relative folder path. */\nfunction folderPathError(path) {\n\tif (path.length === 0) return \"The root is implicit and cannot be registered as a folder.\";\n\tif (path.startsWith(\"/\") || path.endsWith(\"/\")) return \"Folder paths must be relative and must not start or end with a slash.\";\n\tfor (const segment of path.split(\"/\")) {\n\t\tconst problem = folderNameError(segment);\n\t\tif (problem) return `Invalid folder path \"${path}\": ${problem}`;\n\t}\n\treturn null;\n}\n/** Case-insensitive, Unicode-normalized key used to prevent portable path collisions. */\nfunction portableFolderPathKey(path) {\n\treturn normalizeFolderPath(path).toLocaleLowerCase(\"en-US\");\n}\nfunction parentFolderPath(path) {\n\tconst separator = path.lastIndexOf(\"/\");\n\treturn separator === -1 ? \"\" : path.slice(0, separator);\n}\nfunction folderNameOf(path) {\n\tconst separator = path.lastIndexOf(\"/\");\n\treturn separator === -1 ? path : path.slice(separator + 1);\n}\nfunction joinFolderPath(parent, name) {\n\treturn parent === \"\" ? name : `${parent}/${name}`;\n}\nfunction folderOfRawPath(rawPath) {\n\treturn parentFolderPath(rawPath);\n}\nfunction rawFileNameOfPath(rawPath) {\n\treturn folderNameOf(rawPath);\n}\nfunction isFolderOrDescendant(path, ancestor) {\n\treturn path === ancestor || path.startsWith(`${ancestor}/`);\n}\nfunction replaceFolderPrefix(path, from, to) {\n\tif (path === from) return to;\n\treturn `${to}${path.slice(from.length)}`;\n}\n//#endregion\n//#region src/lib/core/raw-path.ts\nvar CONTROL_CHARACTERS = /[\\u0000-\\u001f\\u007f]/;\nvar WINDOWS_FORBIDDEN_CHARACTERS = /[<>:\"|?*]/;\nvar WINDOWS_RESERVED_NAME = /^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\\..*)?$/i;\nvar UUID_PATTERN = \"[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}\";\nvar FUNDUS_TRANSACTION_NAME = new RegExp(`^(?:\\\\.fundus-replace-${UUID_PATTERN}\\\\.tmp|\\\\.fundus-delete(?:-assets)?-${UUID_PATTERN})$`, \"i\");\nvar FUNDUS_TRANSACTION_SUFFIX = new RegExp(`\\\\.fundus-(?:replace-)?${UUID_PATTERN}$`, \"i\");\n/** Whether a name is an exact Fundus-owned, short-lived transaction artifact. */\nfunction isFundusTransactionName(name) {\n\treturn FUNDUS_TRANSACTION_NAME.test(name) || FUNDUS_TRANSACTION_SUFFIX.test(name);\n}\n/** Validate one portable, externally-owned raw-file name. */\nfunction rawFileNameError(name) {\n\tif (name.length === 0) return \"Raw file names must not be empty.\";\n\tif (name !== name.normalize(\"NFC\")) return \"Raw file names must be Unicode-normalized (NFC).\";\n\tif (name !== name.trim()) return \"Raw file names must not start or end with whitespace.\";\n\tif (name === \".\" || name === \"..\") return `\"${name}\" is not a valid raw file name.`;\n\tif (name.includes(\"/\") || name.includes(\"\\\\\")) return \"Raw file names must not contain path separators.\";\n\tif (CONTROL_CHARACTERS.test(name)) return \"Raw file names must not contain control characters.\";\n\tif (WINDOWS_FORBIDDEN_CHARACTERS.test(name)) return \"Raw file names must not contain Windows-reserved characters (: * ? \\\" < > |).\";\n\tif (name.endsWith(\".\")) return \"Raw file names must not end with a dot.\";\n\tif (name.toLocaleLowerCase(\"en-US\") === \".gitkeep\") return `\"${name}\" is reserved for Fundus folder management.`;\n\tif (WINDOWS_RESERVED_NAME.test(name)) return `\"${name}\" is a reserved filesystem name.`;\n\tif (isFundusTransactionName(name)) return `\"${name}\" is reserved for Fundus transactions.`;\n\treturn null;\n}\n/** Validate a portable POSIX-relative raw path without permitting traversal. */\nfunction rawFilePathError(path) {\n\tif (path.length === 0 || path.startsWith(\"/\") || path.endsWith(\"/\") || path.includes(\"\\\\\")) return `Unsafe raw file path \"${path}\".`;\n\tconst segments = path.split(\"/\");\n\tfor (const segment of segments.slice(0, -1)) {\n\t\tconst problem = folderNameError(segment);\n\t\tif (problem) return `Invalid raw file path \"${path}\": ${problem}`;\n\t\tif (isFundusTransactionName(segment)) return `Invalid raw file path \"${path}\": \"${segment}\" is reserved for Fundus transactions.`;\n\t\tif (segment !== segment.normalize(\"NFC\")) return `Raw file path \"${path}\" is not Unicode-normalized (NFC).`;\n\t}\n\tconst fileProblem = rawFileNameError(segments.at(-1) ?? \"\");\n\treturn fileProblem ? `Invalid raw file path \"${path}\": ${fileProblem}` : null;\n}\n/** Portable case/normalization collision key for complete raw paths. */\nfunction portableRawPathKey(path) {\n\treturn normalizeFolderPath(path).toLocaleLowerCase(\"en-US\");\n}\n//#endregion\n//#region src/lib/core/plugins/audio.ts\n/** Built-in presets, always available; host config merges over them. */\nvar AUDIO_BUILT_IN_PRESETS = { default: {\n\tcodec: \"opus\",\n\tbitrateKbps: 96,\n\tcontainer: \"webm\"\n} };\n/** Each codec's muxable container — a mismatch is a config error, not an ffmpeg one. */\nvar CONTAINER_BY_CODEC = {\n\topus: \"webm\",\n\taac: \"m4a\"\n};\nfunction validateAudioPreset(name, value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(`Audio preset \"${name}\" must be an object.`);\n\tconst record = value;\n\tif (record.codec !== \"opus\" && record.codec !== \"aac\") throw new Error(`Audio preset \"${name}\" needs a \"codec\" of 'opus' | 'aac'.`);\n\tif (typeof record.bitrateKbps !== \"number\" || !Number.isInteger(record.bitrateKbps) || record.bitrateKbps <= 0) throw new Error(`Audio preset \"${name}\" needs a positive integer \"bitrateKbps\".`);\n\tconst expectedContainer = CONTAINER_BY_CODEC[record.codec];\n\tif (record.container !== expectedContainer) throw new Error(`Audio preset \"${name}\": codec '${record.codec}' requires container '${expectedContainer}'.`);\n\treturn {\n\t\tcodec: record.codec,\n\t\tbitrateKbps: record.bitrateKbps,\n\t\tcontainer: expectedContainer\n\t};\n}\nvar audioPlugin = {\n\ttype: \"audio\",\n\taccepts: [...[\n\t\t\"mp3\",\n\t\t\"wav\",\n\t\t\"m4a\",\n\t\t\"ogg\",\n\t\t\"flac\"\n\t]],\n\tdefaultParameters: () => ({ preset: \"default\" }),\n\tvalidateParameters(value) {\n\t\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(\"Audio parameters must be an object.\");\n\t\tconst record = value;\n\t\tif (typeof record.preset !== \"string\" || record.preset.length === 0) throw new Error(\"Audio parameters need a non-empty string \\\"preset\\\".\");\n\t\treturn { preset: record.preset };\n\t}\n};\n//#endregion\n//#region src/lib/core/asset-reference.ts\n/** Whether a value is a well-formed asset-reference marker. */\nfunction isAssetReference(value) {\n\treturn typeof value === \"object\" && value !== null && !Array.isArray(value) && typeof value.$asset === \"string\" && value.$asset !== \"\";\n}\n//#endregion\n//#region src/lib/core/chroma-key.ts\n/** The upstream shader's property defaults — a freshly ingested asset starts here. */\nvar DEFAULT_CHROMA_KEY_PARAMETERS = {\n\tkeyColor: [\n\t\t0,\n\t\t1,\n\t\t0\n\t],\n\tcolorCutoff: .2,\n\tcolorFeathering: .33,\n\tmaskFeathering: 1,\n\tsharpening: .5,\n\tdespill: 1,\n\tdespillLuminanceAdd: .2\n};\nvar SCALAR_KEYS = [\n\t\"colorCutoff\",\n\t\"colorFeathering\",\n\t\"maskFeathering\",\n\t\"sharpening\",\n\t\"despill\",\n\t\"despillLuminanceAdd\"\n];\nfunction clampUnit(value) {\n\treturn Math.min(1, Math.max(0, value));\n}\n/**\n* Validate an unknown chroma-key blob: every field required, every channel and\n* scalar a finite number. Values are clamped into 0–1 (slider float artifacts\n* must not invalidate a library), non-numbers throw.\n*/\nfunction validateChromaKeyParameters(value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(\"\\\"chromaKey\\\" must be an object.\");\n\tconst record = value;\n\tconst keyColor = record.keyColor;\n\tif (!Array.isArray(keyColor) || keyColor.length !== 3 || keyColor.some((channel) => typeof channel !== \"number\" || !Number.isFinite(channel))) throw new Error(\"\\\"chromaKey.keyColor\\\" must be an array of three numbers (RGB, 0–1 each).\");\n\tconst result = { keyColor: [\n\t\tclampUnit(keyColor[0]),\n\t\tclampUnit(keyColor[1]),\n\t\tclampUnit(keyColor[2])\n\t] };\n\tfor (const key of SCALAR_KEYS) {\n\t\tconst scalar = record[key];\n\t\tif (typeof scalar !== \"number\" || !Number.isFinite(scalar)) throw new Error(`\"chromaKey.${key}\" must be a number (0–1).`);\n\t\tresult[key] = clampUnit(scalar);\n\t}\n\treturn result;\n}\n//#endregion\n//#region src/lib/core/plugins/video.ts\nvar INPUT_PATH_TOKEN = Symbol(\"Fundus FFmpeg input\");\nvar OUTPUT_PATH_TOKEN = Symbol(\"Fundus FFmpeg output\");\nfunction isCustomFfmpegVideoPreset(preset) {\n\treturn \"ffmpegArgs\" in preset;\n}\n/** Replace the validated path markers without invoking host code during processing. */\nfunction materializeFfmpegCommand(preset, paths) {\n\treturn preset.ffmpegArgs.map((argument) => {\n\t\tif (typeof argument === \"string\") return argument;\n\t\treturn argument.fundusPath === \"input\" ? paths.inputPath : paths.outputPath;\n\t});\n}\n/**\n* Built-in presets, always available; host config merges over them. The\n* default is the proven committed-video formula: H.264, slow preset, animation\n* tune, CRF 28, yuv420p, faststart MP4.\n*/\nvar VIDEO_BUILT_IN_PRESETS = { default: {\n\tcodec: \"h264\",\n\tcrf: 28,\n\tencoderPreset: \"slow\",\n\ttune: \"animation\",\n\tpixelFormat: \"yuv420p\",\n\tcontainer: \"mp4\"\n} };\nfunction validateCustomFfmpegPreset(name, record) {\n\tif (record.container !== \"mp4\") throw new Error(`Video preset \"${name}\" needs a \"container\" of 'mp4'.`);\n\tif (typeof record.ffmpegArgs !== \"function\") throw new Error(`Video preset \"${name}\" needs \"ffmpegArgs\" to be a function.`);\n\tconst mixedField = [\n\t\t\"codec\",\n\t\t\"crf\",\n\t\t\"encoderPreset\",\n\t\t\"tune\",\n\t\t\"pixelFormat\"\n\t].find((field) => record[field] !== void 0);\n\tif (mixedField) throw new Error(`Video preset \"${name}\" cannot combine \"ffmpegArgs\" with structured field \"${mixedField}\".`);\n\tlet commandArguments;\n\ttry {\n\t\tcommandArguments = record.ffmpegArgs({\n\t\t\tinput: INPUT_PATH_TOKEN,\n\t\t\toutput: OUTPUT_PATH_TOKEN\n\t\t});\n\t} catch (cause) {\n\t\tthrow new Error(`Video preset \"${name}\" threw while evaluating \"ffmpegArgs\": ${cause instanceof Error ? cause.message : String(cause)}`);\n\t}\n\tif (!Array.isArray(commandArguments) || commandArguments.some((argument) => (typeof argument !== \"string\" || argument.length === 0) && argument !== INPUT_PATH_TOKEN && argument !== OUTPUT_PATH_TOKEN)) throw new Error(`Video preset \"${name}\" has invalid \"ffmpegArgs\" output; expected non-empty strings and the supplied input/output tokens.`);\n\tconst inputCount = commandArguments.filter((argument) => argument === INPUT_PATH_TOKEN).length;\n\tconst outputCount = commandArguments.filter((argument) => argument === OUTPUT_PATH_TOKEN).length;\n\tif (inputCount !== 1 || outputCount !== 1) throw new Error(`Video preset \"${name}\" must use input and output exactly once in \"ffmpegArgs\".`);\n\treturn {\n\t\tcontainer: \"mp4\",\n\t\tffmpegArgs: commandArguments.map((argument) => {\n\t\t\tif (argument === INPUT_PATH_TOKEN) return { fundusPath: \"input\" };\n\t\t\tif (argument === OUTPUT_PATH_TOKEN) return { fundusPath: \"output\" };\n\t\t\treturn argument;\n\t\t})\n\t};\n}\nfunction validateVideoPreset(name, value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(`Video preset \"${name}\" must be an object.`);\n\tconst record = value;\n\tif (record.ffmpegCmd !== void 0) throw new Error(`Video preset \"${name}\" must define custom arguments with \"ffmpegArgs\".`);\n\tif (record.ffmpegArgs !== void 0) return validateCustomFfmpegPreset(name, record);\n\tif (record.codec !== \"h264\") throw new Error(`Video preset \"${name}\" needs a \"codec\" of 'h264'.`);\n\tif (typeof record.crf !== \"number\" || !Number.isInteger(record.crf) || record.crf < 0) throw new Error(`Video preset \"${name}\" needs an integer \"crf\" ≥ 0.`);\n\tif (typeof record.encoderPreset !== \"string\" || record.encoderPreset.length === 0) throw new Error(`Video preset \"${name}\" needs a non-empty string \"encoderPreset\".`);\n\tif (record.tune !== void 0 && (typeof record.tune !== \"string\" || record.tune.length === 0)) throw new Error(`Video preset \"${name}\" has a non-string \"tune\".`);\n\tif (typeof record.pixelFormat !== \"string\" || record.pixelFormat.length === 0) throw new Error(`Video preset \"${name}\" needs a non-empty string \"pixelFormat\".`);\n\tif (record.container !== \"mp4\") throw new Error(`Video preset \"${name}\" needs a \"container\" of 'mp4'.`);\n\treturn {\n\t\tcodec: \"h264\",\n\t\tcrf: record.crf,\n\t\tencoderPreset: record.encoderPreset,\n\t\t...record.tune !== void 0 ? { tune: record.tune } : {},\n\t\tpixelFormat: record.pixelFormat,\n\t\tcontainer: \"mp4\"\n\t};\n}\nvar VIDEO_EXTENSIONS = [\n\t\"mp4\",\n\t\"mov\",\n\t\"webm\",\n\t\"m4v\"\n];\n/** Shared by the video and chroma-key-video plugins (identical transcode inputs). */\nfunction validateVideoParameters(label, value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(`${label} parameters must be an object.`);\n\tconst record = value;\n\tif (typeof record.preset !== \"string\" || record.preset.length === 0) throw new Error(`${label} parameters need a non-empty string \"preset\".`);\n\tif (record.maxWidth !== void 0) {\n\t\tif (typeof record.maxWidth !== \"number\" || !Number.isInteger(record.maxWidth) || record.maxWidth <= 0) throw new Error(`${label} \"maxWidth\" must be a positive integer when set.`);\n\t}\n\treturn {\n\t\tpreset: record.preset,\n\t\t...record.maxWidth !== void 0 ? { maxWidth: record.maxWidth } : {}\n\t};\n}\nvar videoPlugin = {\n\ttype: \"video\",\n\taccepts: [...VIDEO_EXTENSIONS],\n\tdefaultParameters: () => ({ preset: \"default\" }),\n\tvalidateParameters(value) {\n\t\treturn validateVideoParameters(\"Video\", value);\n\t}\n};\n//#endregion\n//#region src/lib/core/plugins/chroma-key-video.ts\n/**\n* Chroma-key-video plugin (core part): a greenscreen video delivered through\n* the video plugin's transcode pipeline, plus the keying data the runtime's\n* WebGL renderer needs — chroma-key parameters and two optional image\n* references: a grayscale shape `mask` multiplied onto the keyed\n* alpha, and a static `fallback` image shown when WebGL2 is unavailable.\n*\n* The keying values and references are entry-only data: they travel into the\n* generated manifest entry but never touch the ffmpeg job, so\n* `processingParameters` narrows the job-hash input to the transcode inputs\n* (preset + maxWidth) — retuning a slider must not re-transcode the proxy.\n*/\nfunction validateOptionalReference(label, value) {\n\tif (value === void 0) return void 0;\n\tif (!isAssetReference(value)) throw new Error(`\"${label}\" must be an asset reference ({ \"$asset\": \"<id>\" }).`);\n\treturn { $asset: value.$asset };\n}\nvar chromaKeyVideoPlugin = {\n\ttype: \"chroma-key-video\",\n\taccepts: [...VIDEO_EXTENSIONS],\n\tdefaultParameters: () => ({\n\t\tpreset: \"default\",\n\t\tchromaKey: {\n\t\t\t...DEFAULT_CHROMA_KEY_PARAMETERS,\n\t\t\tkeyColor: [...DEFAULT_CHROMA_KEY_PARAMETERS.keyColor]\n\t\t}\n\t}),\n\tvalidateParameters(value) {\n\t\tconst videoParameters = validateVideoParameters(\"Chroma-key-video\", value);\n\t\tconst record = value;\n\t\tconst chromaKey = validateChromaKeyParameters(record.chromaKey);\n\t\tconst mask = validateOptionalReference(\"mask\", record.mask);\n\t\tconst fallback = validateOptionalReference(\"fallback\", record.fallback);\n\t\treturn {\n\t\t\t...videoParameters,\n\t\t\tchromaKey,\n\t\t\t...mask !== void 0 ? { mask } : {},\n\t\t\t...fallback !== void 0 ? { fallback } : {}\n\t\t};\n\t},\n\tcollectReferences(parameters) {\n\t\tconst references = [];\n\t\tif (parameters.mask) references.push({\n\t\t\tfield: \"mask\",\n\t\t\tassetId: parameters.mask.$asset,\n\t\t\texpectedTypes: [\"image\"]\n\t\t});\n\t\tif (parameters.fallback) references.push({\n\t\t\tfield: \"fallback\",\n\t\t\tassetId: parameters.fallback.$asset,\n\t\t\texpectedTypes: [\"image\"]\n\t\t});\n\t\treturn references;\n\t},\n\tprocessingParameters(parameters) {\n\t\treturn {\n\t\t\tpreset: parameters.preset,\n\t\t\t...parameters.maxWidth !== void 0 ? { maxWidth: parameters.maxWidth } : {}\n\t\t};\n\t}\n};\n//#endregion\n//#region src/lib/core/plugins/image.ts\nvar IMAGE_FORMATS = [\n\t\"webp\",\n\t\"png\",\n\t\"avif\",\n\t\"jpeg\"\n];\n/** Built-in presets, always available; host config merges over them. */\nvar IMAGE_BUILT_IN_PRESETS = { default: {\n\tformat: \"webp\",\n\tquality: 82\n} };\nfunction validateImagePreset(name, value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(`Image preset \"${name}\" must be an object.`);\n\tconst record = value;\n\tif (typeof record.format !== \"string\" || !IMAGE_FORMATS.includes(record.format)) throw new Error(`Image preset \"${name}\" needs a \"format\" of ${IMAGE_FORMATS.map((format) => `'${format}'`).join(\" | \")}.`);\n\tif (record.quality !== void 0 && typeof record.quality !== \"number\") throw new Error(`Image preset \"${name}\" has a non-number \"quality\".`);\n\treturn {\n\t\tformat: record.format,\n\t\tquality: record.quality\n\t};\n}\nvar RASTER_IMAGE_EXTENSIONS = [\n\t\"png\",\n\t\"jpg\",\n\t\"jpeg\",\n\t\"webp\",\n\t\"avif\"\n];\nvar imagePlugin = {\n\ttype: \"image\",\n\taccepts: [...RASTER_IMAGE_EXTENSIONS],\n\tdefaultParameters: () => ({ preset: \"default\" }),\n\tvalidateParameters(value) {\n\t\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(\"Image parameters must be an object.\");\n\t\tconst record = value;\n\t\tif (typeof record.preset !== \"string\" || record.preset.length === 0) throw new Error(\"Image parameters need a non-empty string \\\"preset\\\".\");\n\t\tif (record.targetWidth !== void 0) {\n\t\t\tif (typeof record.targetWidth !== \"number\" || !Number.isInteger(record.targetWidth) || record.targetWidth <= 0) throw new Error(\"Image \\\"targetWidth\\\" must be a positive integer when set.\");\n\t\t}\n\t\treturn {\n\t\t\tpreset: record.preset,\n\t\t\t...record.targetWidth !== void 0 ? { targetWidth: record.targetWidth } : {}\n\t\t};\n\t}\n};\n//#endregion\n//#region src/lib/core/slice-data.ts\n/**\n* The slice data model keeps the source image separate from slicing metadata\n* (Fundus tracks raw files and\n* proxy dimensions separately), so there is no `SliceSource` here.\n*\n* The geometry is stored as **insets** (border thickness in source pixels), the\n* canonical, render-ready form — equivalent to CSS `border-image-slice`.\n* `slicedAxesFor` is the single source of truth for which axes each mode uses.\n*/\nvar SLICE_MODES = [\n\t\"nine\",\n\t\"three-horizontal\",\n\t\"three-vertical\",\n\t\"one\"\n];\n/** All-zero insets — the \"no overdraw\" value. */\nfunction createZeroInsets() {\n\treturn {\n\t\ttop: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tleft: 0\n\t};\n}\n/**\n* Default insets for a freshly ingested image: each border a quarter of the\n* corresponding dimension (at least 1px where the image is large enough),\n* always clamped so a center of at least one source pixel remains on each\n* axis. For an axis too small for insets + a 1px center (width/height ≤ 2)\n* the insets on that axis are 0 — structurally valid slicing for any size ≥ 1.\n*/\nfunction defaultInsetsForSize(width, height) {\n\tconst horizontal = Math.min(Math.max(1, Math.floor(width / 4)), Math.floor((width - 1) / 2));\n\tconst vertical = Math.min(Math.max(1, Math.floor(height / 4)), Math.floor((height - 1) / 2));\n\treturn {\n\t\ttop: vertical,\n\t\tright: horizontal,\n\t\tbottom: vertical,\n\t\tleft: horizontal\n\t};\n}\n/** Which source-image axes are sliced for a mode. */\nfunction slicedAxesFor(mode) {\n\treturn {\n\t\thorizontal: mode === \"nine\" || mode === \"three-horizontal\",\n\t\tvertical: mode === \"nine\" || mode === \"three-vertical\"\n\t};\n}\n/** Maximum inset on one side while preserving the opposite inset. */\nfunction maxInset(insets, side, width, height) {\n\tif (side === \"left\") return width - insets.right;\n\tif (side === \"right\") return width - insets.left;\n\tif (side === \"top\") return height - insets.bottom;\n\treturn height - insets.top;\n}\n/** Maximum overdraw on one side while preserving at least one core source pixel. */\nfunction maxOverdraw(overdraw, side, width, height) {\n\treturn maxInset(overdraw, side, width, height) - 1;\n}\n//#endregion\n//#region src/lib/core/plugins/slice.ts\nfunction clamp(value, min, max) {\n\treturn Math.max(min, Math.min(max, value));\n}\n/**\n* Overdraw that reaches past a slice inset must stay fixed during compression:\n* otherwise it would be stretched with the center or clipped afterward. Clamp\n* in runtime order so processing, previews, and emitted manifests agree.\n*/\nfunction processedSliceInsets(options) {\n\tconst axes = slicedAxesFor(options.mode);\n\tconst overdraw = options.overdraw ?? {\n\t\ttop: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tleft: 0\n\t};\n\tconst fixHorizontal = axes.horizontal && (options.compression?.x ?? 0) > 0;\n\tconst fixVertical = axes.vertical && (options.compression?.y ?? 0) > 0;\n\tconst desiredLeft = fixHorizontal ? Math.max(options.insets.left, overdraw.left) : options.insets.left;\n\tconst desiredRight = fixHorizontal ? Math.max(options.insets.right, overdraw.right) : options.insets.right;\n\tconst desiredTop = fixVertical ? Math.max(options.insets.top, overdraw.top) : options.insets.top;\n\tconst desiredBottom = fixVertical ? Math.max(options.insets.bottom, overdraw.bottom) : options.insets.bottom;\n\tconst left = clamp(desiredLeft, 0, options.width);\n\tconst right = clamp(desiredRight, 0, options.width - left);\n\tconst top = clamp(desiredTop, 0, options.height);\n\treturn {\n\t\ttop,\n\t\tright,\n\t\tbottom: clamp(desiredBottom, 0, options.height - top),\n\t\tleft\n\t};\n}\n/** Built-in presets, always available; host config merges over them. */\nvar SLICE_BUILT_IN_PRESETS = { default: {\n\tformat: \"webp\",\n\tquality: 82\n} };\nfunction validateInsets(label, value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(`Slice ${label} must be an object with top/right/bottom/left.`);\n\tconst record = value;\n\tconst sides = [\n\t\t\"top\",\n\t\t\"right\",\n\t\t\"bottom\",\n\t\t\"left\"\n\t];\n\tconst result = createZeroInsets();\n\tfor (const side of sides) {\n\t\tconst sideValue = record[side];\n\t\tif (typeof sideValue !== \"number\" || !Number.isInteger(sideValue) || sideValue < 0) throw new Error(`Slice ${label}.${side} must be a non-negative integer.`);\n\t\tresult[side] = sideValue;\n\t}\n\treturn result;\n}\nfunction validateCompression(value) {\n\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(\"Slice compression must be an object with x/y percentages.\");\n\tconst record = value;\n\tconst result = {\n\t\tx: 0,\n\t\ty: 0\n\t};\n\tfor (const axis of [\"x\", \"y\"]) {\n\t\tconst axisValue = record[axis];\n\t\tif (typeof axisValue !== \"number\" || !Number.isInteger(axisValue) || axisValue < 0 || axisValue > 100) throw new Error(`Slice compression.${axis} must be an integer from 0 to 100.`);\n\t\tresult[axis] = axisValue;\n\t}\n\treturn result;\n}\nvar slicePlugin = {\n\ttype: \"slice\",\n\taccepts: [...RASTER_IMAGE_EXTENSIONS],\n\tdefaultParameters: () => ({\n\t\tmode: \"nine\",\n\t\tinsets: createZeroInsets(),\n\t\tpixelRatio: 1,\n\t\tpreset: \"default\"\n\t}),\n\tvalidateParameters(value) {\n\t\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) throw new Error(\"Slice parameters must be an object.\");\n\t\tconst record = value;\n\t\tif (typeof record.mode !== \"string\" || !SLICE_MODES.includes(record.mode)) throw new Error(`Slice \"mode\" must be one of ${SLICE_MODES.map((mode) => `'${mode}'`).join(\" | \")}.`);\n\t\tconst insets = validateInsets(\"insets\", record.insets);\n\t\tif (typeof record.pixelRatio !== \"number\" || !Number.isInteger(record.pixelRatio) || record.pixelRatio < 1) throw new Error(\"Slice \\\"pixelRatio\\\" must be an integer ≥ 1.\");\n\t\tconst overdraw = record.overdraw === void 0 ? void 0 : validateInsets(\"overdraw\", record.overdraw);\n\t\tconst compression = record.compression === void 0 ? void 0 : validateCompression(record.compression);\n\t\tif (typeof record.preset !== \"string\" || record.preset.length === 0) throw new Error(\"Slice parameters need a non-empty string \\\"preset\\\".\");\n\t\treturn {\n\t\t\tmode: record.mode,\n\t\t\tinsets,\n\t\t\tpixelRatio: record.pixelRatio,\n\t\t\t...overdraw !== void 0 ? { overdraw } : {},\n\t\t\t...compression !== void 0 ? { compression } : {},\n\t\t\tpreset: record.preset\n\t\t};\n\t}\n};\n//#endregion\n//#region src/lib/core/plugins/registry.ts\n/**\n* The composition root for Fundus asset-type plugins.\n*\n* A plugin is registered exactly once here. Environment-specific surfaces\n* (server processing, editor panels, runtime handlers) keep their imports on\n* the correct side of SvelteKit's browser/server boundary and project this\n* registered set onto their local implementation catalogues.\n*/\nvar PluginRegistry = class {\n\t#byType = /* @__PURE__ */ new Map();\n\tregister(plugin) {\n\t\tif (this.#byType.has(plugin.type)) throw new Error(`Plugin type \"${plugin.type}\" is already registered.`);\n\t\tthis.#byType.set(plugin.type, plugin);\n\t}\n\thas(type) {\n\t\treturn this.#byType.has(type);\n\t}\n\tvalues() {\n\t\treturn [...this.#byType.values()];\n\t}\n\ttypes() {\n\t\treturn [...this.#byType.keys()];\n\t}\n\t/**\n\t* Select the environment-specific implementation for every registered\n\t* plugin. Unregistered catalogue entries remain dormant; a registered\n\t* plugin without the requested facet fails immediately during startup.\n\t*/\n\tproject(catalogue, facet) {\n\t\tconst projected = Object.create(null);\n\t\tfor (const type of this.#byType.keys()) {\n\t\t\tif (!Object.hasOwn(catalogue, type)) throw new Error(`Registered plugin \"${type}\" has no ${facet}.`);\n\t\t\tprojected[type] = catalogue[type];\n\t\t}\n\t\treturn projected;\n\t}\n};\nvar plugins = new PluginRegistry();\nplugins.register(imagePlugin);\nplugins.register(slicePlugin);\nplugins.register(videoPlugin);\nplugins.register(chromaKeyVideoPlugin);\nplugins.register(audioPlugin);\n//#endregion\n//#region src/lib/core/ingest.ts\n/** The registered descriptors, in registration order. */\nvar BUILT_IN_DESCRIPTORS = plugins.values();\n/** Unique HTML file-picker accept extensions derived from descriptor claims. */\nfunction acceptedExtensions(descriptors = BUILT_IN_DESCRIPTORS) {\n\treturn [...new Set(descriptors.flatMap((descriptor) => descriptor.accepts))].sort().map((extension) => `.${extension}`);\n}\n/** HTML file-picker extensions accepted by one registered asset type. */\nfunction acceptedExtensionsForType(type, descriptors = BUILT_IN_DESCRIPTORS) {\n\treturn descriptors.find((descriptor) => descriptor.type === type)?.accepts.map((extension) => `.${extension}`).sort() ?? [];\n}\n/**\n* Types an ingested file of this extension could become — derived from the\n* descriptors' `accepts` claims. Raster images and video containers are\n* ambiguous (image/slice, video/chroma-key-video) — the editor dialog prompts\n* once, the CLI requires `--type`; audio is unambiguous.\n*/\nfunction typesForFileName(fileName, descriptors = BUILT_IN_DESCRIPTORS) {\n\tconst extension = fileName.slice(fileName.lastIndexOf(\".\") + 1).toLowerCase();\n\treturn descriptors.filter((descriptor) => descriptor.accepts.includes(extension)).map((descriptor) => descriptor.type);\n}\n//#endregion\n//#region src/lib/core/canonicalize.ts\n/**\n* Stable JSON for hash inputs: recursively sorted keys, no whitespace,\n* `undefined` object values dropped. Two parameter objects that differ only in\n* key order (or in explicitly-undefined optionals) canonicalize identically,\n* so the derived job hash — and thus the proxy file name — stays stable.\n*/\nfunction canonicalizeParameters(parameters) {\n\treturn stringify(parameters);\n}\n/** Deterministic UTF-16 code-unit ordering, independent of host locale. */\nfunction compareCodeUnits(left, right) {\n\treturn left < right ? -1 : left > right ? 1 : 0;\n}\nfunction stringify(value) {\n\tif (value === void 0) return \"null\";\n\tif (value === null || typeof value === \"number\" || typeof value === \"boolean\") return JSON.stringify(value);\n\tif (typeof value === \"string\") return JSON.stringify(value);\n\tif (Array.isArray(value)) return `[${value.map(stringify).join(\",\")}]`;\n\tif (typeof value === \"object\") {\n\t\tconst record = value;\n\t\tconst parts = [];\n\t\tfor (const key of Object.keys(record).sort()) {\n\t\t\tif (record[key] === void 0) continue;\n\t\t\tparts.push(`${JSON.stringify(key)}:${stringify(record[key])}`);\n\t\t}\n\t\treturn `{${parts.join(\",\")}}`;\n\t}\n\tthrow new Error(`Cannot canonicalize a ${typeof value} value.`);\n}\n//#endregion\nexport { rawFilePathError as A, portableFolderPathKey as B, videoPlugin as C, validateAudioPreset as D, audioPlugin as E, folderPathError as F, replaceFolderPrefix as H, isFolderOrDescendant as I, joinFolderPath as L, folderNameError as M, folderNameOf as N, isFundusTransactionName as O, folderOfRawPath as P, normalizeFolderPath as R, validateVideoPreset as S, AUDIO_BUILT_IN_PRESETS as T, rawFileNameOfPath as V, validateImagePreset as _, typesForFileName as a, isCustomFfmpegVideoPreset as b, processedSliceInsets as c, defaultInsetsForSize as d, maxInset as f, imagePlugin as g, IMAGE_BUILT_IN_PRESETS as h, acceptedExtensionsForType as i, FOLDER_SENTINEL as j, portableRawPathKey as k, slicePlugin as l, slicedAxesFor as m, compareCodeUnits as n, plugins as o, maxOverdraw as p, acceptedExtensions as r, SLICE_BUILT_IN_PRESETS as s, canonicalizeParameters as t, createZeroInsets as u, chromaKeyVideoPlugin as v, isAssetReference as w, materializeFfmpegCommand as x, VIDEO_BUILT_IN_PRESETS as y, parentFolderPath as z };\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ //#region src/lib/core/dependencies.ts
2
+ /**
3
+ * Renders declaring dependency sources as `"a", "b"` for a `required by …`
4
+ * clause. One formatter shared by validation messages, the editor inspector,
5
+ * and the delete confirmation so the wording never drifts.
6
+ */
7
+ function formatRequiredBy(sources) {
8
+ return sources.map((source) => `"${source}"`).join(", ");
9
+ }
10
+ var FUNDUS_ASSET_KINDS = [
11
+ "image",
12
+ "slice",
13
+ "video",
14
+ "chroma-key-video",
15
+ "audio"
16
+ ];
17
+ function isFundusAssetKind(value) {
18
+ return typeof value === "string" && FUNDUS_ASSET_KINDS.includes(value);
19
+ }
20
+ /**
21
+ * Runtime validation of one loaded dependency list (one source): an array of
22
+ * `{ id: non-empty string, type: FundusAssetKind }` with no duplicate id within
23
+ * the list. Throws with the source name on any violation.
24
+ */
25
+ function validateDependencyList(source, value) {
26
+ if (!Array.isArray(value)) throw new Error(`Dependency source "${source}" must default-export an array of { id, type } entries.`);
27
+ const seen = /* @__PURE__ */ new Set();
28
+ const result = [];
29
+ for (const entry of value) {
30
+ if (typeof entry !== "object" || entry === null) throw new Error(`Dependency source "${source}": every entry must be an { id, type } object.`);
31
+ const { id, type } = entry;
32
+ if (typeof id !== "string" || id.length === 0) throw new Error(`Dependency source "${source}": every entry needs a non-empty string "id".`);
33
+ if (!isFundusAssetKind(type)) throw new Error(`Dependency source "${source}": entry "${id}" has unknown type "${String(type)}".`);
34
+ if (seen.has(id)) throw new Error(`Dependency source "${source}": duplicate id "${id}".`);
35
+ seen.add(id);
36
+ result.push({
37
+ id,
38
+ type
39
+ });
40
+ }
41
+ return result;
42
+ }
43
+
44
+ export { formatRequiredBy as f, validateDependencyList as v };
45
+ //# sourceMappingURL=dependencies.js-pUkjICr5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.js-pUkjICr5.js","sources":["../../../../.svelte-kit/output/server/chunks/dependencies.js"],"sourcesContent":["//#region src/lib/core/dependencies.ts\n/**\n* Renders declaring dependency sources as `\"a\", \"b\"` for a `required by …`\n* clause. One formatter shared by validation messages, the editor inspector,\n* and the delete confirmation so the wording never drifts.\n*/\nfunction formatRequiredBy(sources) {\n\treturn sources.map((source) => `\"${source}\"`).join(\", \");\n}\nvar FUNDUS_ASSET_KINDS = [\n\t\"image\",\n\t\"slice\",\n\t\"video\",\n\t\"chroma-key-video\",\n\t\"audio\"\n];\nfunction isFundusAssetKind(value) {\n\treturn typeof value === \"string\" && FUNDUS_ASSET_KINDS.includes(value);\n}\n/**\n* Runtime validation of one loaded dependency list (one source): an array of\n* `{ id: non-empty string, type: FundusAssetKind }` with no duplicate id within\n* the list. Throws with the source name on any violation.\n*/\nfunction validateDependencyList(source, value) {\n\tif (!Array.isArray(value)) throw new Error(`Dependency source \"${source}\" must default-export an array of { id, type } entries.`);\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst result = [];\n\tfor (const entry of value) {\n\t\tif (typeof entry !== \"object\" || entry === null) throw new Error(`Dependency source \"${source}\": every entry must be an { id, type } object.`);\n\t\tconst { id, type } = entry;\n\t\tif (typeof id !== \"string\" || id.length === 0) throw new Error(`Dependency source \"${source}\": every entry needs a non-empty string \"id\".`);\n\t\tif (!isFundusAssetKind(type)) throw new Error(`Dependency source \"${source}\": entry \"${id}\" has unknown type \"${String(type)}\".`);\n\t\tif (seen.has(id)) throw new Error(`Dependency source \"${source}\": duplicate id \"${id}\".`);\n\t\tseen.add(id);\n\t\tresult.push({\n\t\t\tid,\n\t\t\ttype\n\t\t});\n\t}\n\treturn result;\n}\n//#endregion\nexport { validateDependencyList as n, formatRequiredBy as t };\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,gBAAgB,CAAC,OAAO,EAAE;AACnC,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACzD;AACA,IAAI,kBAAkB,GAAG;AACzB,CAAC,OAAO;AACR,CAAC,OAAO;AACR,CAAC,OAAO;AACR,CAAC,kBAAkB;AACnB,CAAC;AACD,CAAC;AACD,SAAS,iBAAiB,CAAC,KAAK,EAAE;AAClC,CAAC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvE;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE;AAC/C,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,uDAAuD,CAAC,CAAC;AAClI,CAAC,MAAM,IAAI,mBAAmB,IAAI,GAAG,EAAE;AACvC,CAAC,MAAM,MAAM,GAAG,EAAE;AAClB,CAAC,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE;AAC5B,EAAE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,8CAA8C,CAAC,CAAC;AAChJ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,KAAK;AAC5B,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,6CAA6C,CAAC,CAAC;AAC7I,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;AACnI,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AAC3F,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACd,EAAE,MAAM,CAAC,IAAI,CAAC;AACd,GAAG,EAAE;AACL,GAAG;AACH,GAAG,CAAC;AACJ,CAAC;AACD,CAAC,OAAO,MAAM;AACd;;;;"}
@@ -1,4 +1,4 @@
1
- import './internal.js-DvC1GD8s.js';
1
+ import './internal.js-7MmaxxwZ.js';
2
2
 
3
3
  //#region node_modules/@sveltejs/kit/src/utils/array.js
4
4
  /**
@@ -149,4 +149,4 @@ var validate_layout_server_exports = validator(valid_layout_server_exports);
149
149
  var validate_page_server_exports = validator(valid_page_server_exports);
150
150
 
151
151
  export { validate_layout_exports as a, validate_page_server_exports as b, validate_page_exports as c, compact as d, hash as h, noop_span as n, validate_layout_server_exports as v };
152
- //# sourceMappingURL=exports.js-gUMFfqhw.js.map
152
+ //# sourceMappingURL=exports.js-bhKV7cEL.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js-gUMFfqhw.js","sources":["../../../../.svelte-kit/output/server/chunks/exports.js"],"sourcesContent":["import \"./internal.js\";\n//#region node_modules/@sveltejs/kit/src/utils/array.js\n/**\n* Removes nullish values from an array.\n*\n* @template T\n* @param {Array<T>} arr\n*/\nfunction compact(arr) {\n\treturn arr.filter(\n\t\t/** @returns {val is NonNullable<T>} */\n\t\t(val) => val != null\n\t);\n}\n//#endregion\n//#region node_modules/@sveltejs/kit/src/runtime/telemetry/noop.js\n/**\n* @type {Span}\n*/\nvar noop_span = {\n\tspanContext() {\n\t\treturn noop_span_context;\n\t},\n\tsetAttribute() {\n\t\treturn this;\n\t},\n\tsetAttributes() {\n\t\treturn this;\n\t},\n\taddEvent() {\n\t\treturn this;\n\t},\n\tsetStatus() {\n\t\treturn this;\n\t},\n\tupdateName() {\n\t\treturn this;\n\t},\n\tend() {\n\t\treturn this;\n\t},\n\tisRecording() {\n\t\treturn false;\n\t},\n\trecordException() {\n\t\treturn this;\n\t},\n\taddLink() {\n\t\treturn this;\n\t},\n\taddLinks() {\n\t\treturn this;\n\t}\n};\n/**\n* @type {SpanContext}\n*/\nvar noop_span_context = {\n\ttraceId: \"\",\n\tspanId: \"\",\n\ttraceFlags: 0\n};\n//#endregion\n//#region node_modules/@sveltejs/kit/src/utils/hash.js\n/**\n* Hash using djb2\n* @param {import('types').StrictBody[]} values\n*/\nfunction hash(...values) {\n\tlet hash = 5381;\n\tfor (const value of values) if (typeof value === \"string\") {\n\t\tlet i = value.length;\n\t\twhile (i) hash = hash * 33 ^ value.charCodeAt(--i);\n\t} else if (ArrayBuffer.isView(value)) {\n\t\tconst buffer = new Uint8Array(value.buffer, value.byteOffset, value.byteLength);\n\t\tlet i = buffer.length;\n\t\twhile (i) hash = hash * 33 ^ buffer[--i];\n\t} else throw new TypeError(\"value must be a string or TypedArray\");\n\treturn (hash >>> 0).toString(36);\n}\n//#endregion\n//#region node_modules/@sveltejs/kit/src/utils/exports.js\n/**\n* @param {Set<string>} expected\n*/\nfunction validator(expected) {\n\t/**\n\t* @param {any} module\n\t* @param {string} [file]\n\t*/\n\tfunction validate(module, file) {\n\t\tif (!module) return;\n\t\tfor (const key in module) {\n\t\t\tif (key[0] === \"_\" || expected.has(key)) continue;\n\t\t\tconst values = [...expected.values()];\n\t\t\tconst hint = hint_for_supported_files(key, file?.slice(file.lastIndexOf(\".\"))) ?? `valid exports are ${values.join(\", \")}, or anything with a '_' prefix`;\n\t\t\tthrow new Error(`Invalid export '${key}'${file ? ` in ${file}` : \"\"} (${hint})`);\n\t\t}\n\t}\n\treturn validate;\n}\n/**\n* @param {string} key\n* @param {string} ext\n* @returns {string | void}\n*/\nfunction hint_for_supported_files(key, ext = \".js\") {\n\tconst supported_files = [];\n\tif (valid_layout_exports.has(key)) supported_files.push(`+layout${ext}`);\n\tif (valid_page_exports.has(key)) supported_files.push(`+page${ext}`);\n\tif (valid_layout_server_exports.has(key)) supported_files.push(`+layout.server${ext}`);\n\tif (valid_page_server_exports.has(key)) supported_files.push(`+page.server${ext}`);\n\tif (valid_server_exports.has(key)) supported_files.push(`+server${ext}`);\n\tif (supported_files.length > 0) return `'${key}' is a valid export in ${supported_files.slice(0, -1).join(\", \")}${supported_files.length > 1 ? \" or \" : \"\"}${supported_files.at(-1)}`;\n}\nvar valid_layout_exports = /* @__PURE__ */ new Set([\n\t\"load\",\n\t\"prerender\",\n\t\"csr\",\n\t\"ssr\",\n\t\"trailingSlash\",\n\t\"config\"\n]);\nvar valid_page_exports = /* @__PURE__ */ new Set([...valid_layout_exports, \"entries\"]);\nvar valid_layout_server_exports = /* @__PURE__ */ new Set([...valid_layout_exports]);\nvar valid_page_server_exports = /* @__PURE__ */ new Set([\n\t...valid_layout_server_exports,\n\t\"actions\",\n\t\"entries\"\n]);\nvar valid_server_exports = /* @__PURE__ */ new Set([\n\t\"GET\",\n\t\"POST\",\n\t\"PATCH\",\n\t\"PUT\",\n\t\"DELETE\",\n\t\"OPTIONS\",\n\t\"HEAD\",\n\t\"fallback\",\n\t\"prerender\",\n\t\"trailingSlash\",\n\t\"config\",\n\t\"entries\"\n]);\nvar validate_layout_exports = validator(valid_layout_exports);\nvar validate_page_exports = validator(valid_page_exports);\nvar validate_layout_server_exports = validator(valid_layout_server_exports);\nvar validate_page_server_exports = validator(valid_page_server_exports);\nvar validate_server_exports = validator(valid_server_exports);\n//#endregion\nexport { validate_server_exports as a, compact as c, validate_page_server_exports as i, validate_layout_server_exports as n, hash as o, validate_page_exports as r, noop_span as s, validate_layout_exports as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,OAAO,CAAC,GAAG,EAAE;AACtB,CAAC,OAAO,GAAG,CAAC,MAAM;AAClB;AACA,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI;AAClB,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,SAAS,GAAG;AAChB,CAAC,WAAW,GAAG;AACf,EAAE,OAAO,iBAAiB;AAC1B,CAAC,CAAC;AACF,CAAC,YAAY,GAAG;AAChB,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,aAAa,GAAG;AACjB,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,QAAQ,GAAG;AACZ,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,SAAS,GAAG;AACb,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,UAAU,GAAG;AACd,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,GAAG,GAAG;AACP,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,WAAW,GAAG;AACf,EAAE,OAAO,KAAK;AACd,CAAC,CAAC;AACF,CAAC,eAAe,GAAG;AACnB,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,OAAO,GAAG;AACX,EAAE,OAAO,IAAI;AACb,CAAC,CAAC;AACF,CAAC,QAAQ,GAAG;AACZ,EAAE,OAAO,IAAI;AACb,CAAC;AACD;AACA;AACA;AACA;AACA,IAAI,iBAAiB,GAAG;AACxB,CAAC,OAAO,EAAE,EAAE;AACZ,CAAC,MAAM,EAAE,EAAE;AACX,CAAC,UAAU,EAAE;AACb,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,IAAI,CAAC,GAAG,MAAM,EAAE;AACzB,CAAC,IAAI,IAAI,GAAG,IAAI;AAChB,CAAC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC5D,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM;AACtB,EAAE,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;AACvC,EAAE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC;AACjF,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM;AACvB,EAAE,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;AAC1C,CAAC,CAAC,MAAM,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC;AACnE,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,SAAS,CAAC,QAAQ,EAAE;AAC7B;AACA;AACA;AACA;AACA,CAAC,SAAS,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE;AACjC,EAAE,IAAI,CAAC,MAAM,EAAE;AACf,EAAE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AAC5B,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AAC5C,GAAG,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;AACxC,GAAG,MAAM,IAAI,GAAG,wBAAwB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,+BAA+B,CAAC;AAC5J,GAAG,MAAM,IAAI,KAAK,CAAC,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACnF,EAAE;AACF,CAAC;AACD,CAAC,OAAO,QAAQ;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,EAAE;AACpD,CAAC,MAAM,eAAe,GAAG,EAAE;AAC3B,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;AACzE,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AACrE,CAAC,IAAI,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AACvF,CAAC,IAAI,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;AACnF,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;AACzE,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,uBAAuB,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,EAAE,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtL;AACA,IAAI,oBAAoB,mBAAmB,IAAI,GAAG,CAAC;AACnD,CAAC,MAAM;AACP,CAAC,WAAW;AACZ,CAAC,KAAK;AACN,CAAC,KAAK;AACN,CAAC,eAAe;AAChB,CAAC;AACD,CAAC,CAAC;AACF,IAAI,kBAAkB,mBAAmB,IAAI,GAAG,CAAC,CAAC,GAAG,oBAAoB,EAAE,SAAS,CAAC,CAAC;AACtF,IAAI,2BAA2B,mBAAmB,IAAI,GAAG,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC;AACpF,IAAI,yBAAyB,mBAAmB,IAAI,GAAG,CAAC;AACxD,CAAC,GAAG,2BAA2B;AAC/B,CAAC,SAAS;AACV,CAAC;AACD,CAAC,CAAC;AACF,IAAI,oBAAoB,mBAAmB,IAAI,GAAG,CAAC;AACnD,CAAC,KAAK;AACN,CAAC,MAAM;AACP,CAAC,OAAO;AACR,CAAC,KAAK;AACN,CAAC,QAAQ;AACT,CAAC,SAAS;AACV,CAAC,MAAM;AACP,CAAC,UAAU;AACX,CAAC,WAAW;AACZ,CAAC,eAAe;AAChB,CAAC,QAAQ;AACT,CAAC;AACD,CAAC,CAAC;AACC,IAAC,uBAAuB,GAAG,SAAS,CAAC,oBAAoB;AACzD,IAAC,qBAAqB,GAAG,SAAS,CAAC,kBAAkB;AACrD,IAAC,8BAA8B,GAAG,SAAS,CAAC,2BAA2B;AACvE,IAAC,4BAA4B,GAAG,SAAS,CAAC,yBAAyB;;;;"}
1
+ {"version":3,"file":"exports.js-bhKV7cEL.js","sources":["../../../../.svelte-kit/output/server/chunks/exports.js"],"sourcesContent":["import \"./internal.js\";\n//#region node_modules/@sveltejs/kit/src/utils/array.js\n/**\n* Removes nullish values from an array.\n*\n* @template T\n* @param {Array<T>} arr\n*/\nfunction compact(arr) {\n\treturn arr.filter(\n\t\t/** @returns {val is NonNullable<T>} */\n\t\t(val) => val != null\n\t);\n}\n//#endregion\n//#region node_modules/@sveltejs/kit/src/runtime/telemetry/noop.js\n/**\n* @type {Span}\n*/\nvar noop_span = {\n\tspanContext() {\n\t\treturn noop_span_context;\n\t},\n\tsetAttribute() {\n\t\treturn this;\n\t},\n\tsetAttributes() {\n\t\treturn this;\n\t},\n\taddEvent() {\n\t\treturn this;\n\t},\n\tsetStatus() {\n\t\treturn this;\n\t},\n\tupdateName() {\n\t\treturn this;\n\t},\n\tend() {\n\t\treturn this;\n\t},\n\tisRecording() {\n\t\treturn false;\n\t},\n\trecordException() {\n\t\treturn this;\n\t},\n\taddLink() {\n\t\treturn this;\n\t},\n\taddLinks() {\n\t\treturn this;\n\t}\n};\n/**\n* @type {SpanContext}\n*/\nvar noop_span_context = {\n\ttraceId: \"\",\n\tspanId: \"\",\n\ttraceFlags: 0\n};\n//#endregion\n//#region node_modules/@sveltejs/kit/src/utils/hash.js\n/**\n* Hash using djb2\n* @param {import('types').StrictBody[]} values\n*/\nfunction hash(...values) {\n\tlet hash = 5381;\n\tfor (const value of values) if (typeof value === \"string\") {\n\t\tlet i = value.length;\n\t\twhile (i) hash = hash * 33 ^ value.charCodeAt(--i);\n\t} else if (ArrayBuffer.isView(value)) {\n\t\tconst buffer = new Uint8Array(value.buffer, value.byteOffset, value.byteLength);\n\t\tlet i = buffer.length;\n\t\twhile (i) hash = hash * 33 ^ buffer[--i];\n\t} else throw new TypeError(\"value must be a string or TypedArray\");\n\treturn (hash >>> 0).toString(36);\n}\n//#endregion\n//#region node_modules/@sveltejs/kit/src/utils/exports.js\n/**\n* @param {Set<string>} expected\n*/\nfunction validator(expected) {\n\t/**\n\t* @param {any} module\n\t* @param {string} [file]\n\t*/\n\tfunction validate(module, file) {\n\t\tif (!module) return;\n\t\tfor (const key in module) {\n\t\t\tif (key[0] === \"_\" || expected.has(key)) continue;\n\t\t\tconst values = [...expected.values()];\n\t\t\tconst hint = hint_for_supported_files(key, file?.slice(file.lastIndexOf(\".\"))) ?? `valid exports are ${values.join(\", \")}, or anything with a '_' prefix`;\n\t\t\tthrow new Error(`Invalid export '${key}'${file ? ` in ${file}` : \"\"} (${hint})`);\n\t\t}\n\t}\n\treturn validate;\n}\n/**\n* @param {string} key\n* @param {string} ext\n* @returns {string | void}\n*/\nfunction hint_for_supported_files(key, ext = \".js\") {\n\tconst supported_files = [];\n\tif (valid_layout_exports.has(key)) supported_files.push(`+layout${ext}`);\n\tif (valid_page_exports.has(key)) supported_files.push(`+page${ext}`);\n\tif (valid_layout_server_exports.has(key)) supported_files.push(`+layout.server${ext}`);\n\tif (valid_page_server_exports.has(key)) supported_files.push(`+page.server${ext}`);\n\tif (valid_server_exports.has(key)) supported_files.push(`+server${ext}`);\n\tif (supported_files.length > 0) return `'${key}' is a valid export in ${supported_files.slice(0, -1).join(\", \")}${supported_files.length > 1 ? \" or \" : \"\"}${supported_files.at(-1)}`;\n}\nvar valid_layout_exports = /* @__PURE__ */ new Set([\n\t\"load\",\n\t\"prerender\",\n\t\"csr\",\n\t\"ssr\",\n\t\"trailingSlash\",\n\t\"config\"\n]);\nvar valid_page_exports = /* @__PURE__ */ new Set([...valid_layout_exports, \"entries\"]);\nvar valid_layout_server_exports = /* @__PURE__ */ new Set([...valid_layout_exports]);\nvar valid_page_server_exports = /* @__PURE__ */ new Set([\n\t...valid_layout_server_exports,\n\t\"actions\",\n\t\"entries\"\n]);\nvar valid_server_exports = /* @__PURE__ */ new Set([\n\t\"GET\",\n\t\"POST\",\n\t\"PATCH\",\n\t\"PUT\",\n\t\"DELETE\",\n\t\"OPTIONS\",\n\t\"HEAD\",\n\t\"fallback\",\n\t\"prerender\",\n\t\"trailingSlash\",\n\t\"config\",\n\t\"entries\"\n]);\nvar validate_layout_exports = validator(valid_layout_exports);\nvar validate_page_exports = validator(valid_page_exports);\nvar validate_layout_server_exports = validator(valid_layout_server_exports);\nvar validate_page_server_exports = validator(valid_page_server_exports);\nvar validate_server_exports = validator(valid_server_exports);\n//#endregion\nexport { validate_server_exports as a, compact as c, validate_page_server_exports as i, validate_layout_server_exports as n, hash as o, validate_page_exports as r, noop_span as s, validate_layout_exports as t };\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { S as SourceImportError, t as assertSafeRelativeFilePath } from './contract.js-_LTMZBo2.js';
1
+ import { S as SourceImportError, h as assertSafeRelativeFilePath } from './contract.js-B6KBK8D9.js';
2
2
  import { join, extname } from 'node:path';
3
3
  import { existsSync } from 'node:fs';
4
4
  import { lstat, readFile } from 'node:fs/promises';
@@ -132,4 +132,4 @@ async function serveFundusFile(config, kind, fileName, request) {
132
132
  }
133
133
 
134
134
  export { apiResponse as a, serveFundusFile as b, errorResponse as e, routeNotFound as r, sourceImportResponse as s };
135
- //# sourceMappingURL=http.js-BiqUcAuu.js.map
135
+ //# sourceMappingURL=http.js-BTq44nR5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.js-BiqUcAuu.js","sources":["../../../../.svelte-kit/output/server/chunks/http.js"],"sourcesContent":["import { i as assertSafeRelativeFilePath, t as SourceImportError } from \"./contract.js\";\nimport { extname, join } from \"node:path\";\nimport { existsSync } from \"node:fs\";\nimport { lstat, readFile } from \"node:fs/promises\";\n//#region src/lib/server/http.ts\nvar CONTENT_TYPES = {\n\t\".png\": \"image/png\",\n\t\".jpg\": \"image/jpeg\",\n\t\".jpeg\": \"image/jpeg\",\n\t\".webp\": \"image/webp\",\n\t\".gif\": \"image/gif\",\n\t\".avif\": \"image/avif\",\n\t\".svg\": \"image/svg+xml\",\n\t\".mp4\": \"video/mp4\",\n\t\".m4v\": \"video/mp4\",\n\t\".mov\": \"video/quicktime\",\n\t\".webm\": \"video/webm\",\n\t\".mp3\": \"audio/mpeg\",\n\t\".wav\": \"audio/wav\",\n\t\".m4a\": \"audio/mp4\",\n\t\".ogg\": \"audio/ogg\",\n\t\".flac\": \"audio/flac\"\n};\nfunction errorResponse(cause, status) {\n\tconst body = { error: { message: cause instanceof Error ? cause.message : String(cause) } };\n\treturn Response.json(body, { status });\n}\nfunction routeNotFound(event) {\n\treturn errorResponse(/* @__PURE__ */ new Error(`No route for ${event.request.method.toUpperCase()} ${event.url.pathname}.`), 404);\n}\nasync function apiResponse(run) {\n\ttry {\n\t\treturn Response.json(await run());\n\t} catch (cause) {\n\t\treturn errorResponse(cause, 400);\n\t}\n}\nvar SOURCE_ERROR_STATUS = {\n\t\"invalid-input\": 400,\n\t\"not-configured\": 401,\n\tunauthorized: 401,\n\tforbidden: 403,\n\t\"not-found\": 404,\n\t\"ambiguous-tag\": 409,\n\t\"rate-limited\": 429,\n\t\"upstream-failed\": 502,\n\t\"invalid-response\": 502,\n\t\"unsafe-download-url\": 502,\n\t\"download-timeout\": 504,\n\t\"download-too-large\": 502,\n\t\"image-too-large\": 502,\n\t\"stale-import\": 409\n};\nasync function sourceImportResponse(run) {\n\ttry {\n\t\treturn Response.json(await run());\n\t} catch (cause) {\n\t\tconst error = cause instanceof SourceImportError ? cause : new SourceImportError(\"invalid-input\", cause instanceof Error ? cause.message : String(cause));\n\t\tconst body = { error: {\n\t\t\tmessage: error.message,\n\t\t\tcode: error.code,\n\t\t\tretryAfterSeconds: error.retryAfterSeconds\n\t\t} };\n\t\tconst headers = error.code === \"rate-limited\" && error.retryAfterSeconds !== void 0 ? { \"Retry-After\": String(error.retryAfterSeconds) } : void 0;\n\t\treturn Response.json(body, {\n\t\t\tstatus: SOURCE_ERROR_STATUS[error.code],\n\t\t\theaders\n\t\t});\n\t}\n}\nfunction parseByteRange(rangeHeader, size) {\n\tif (!rangeHeader) return null;\n\tconst match = /^bytes=(\\d*)-(\\d*)$/.exec(rangeHeader.trim());\n\tif (!match || match[1] === \"\" && match[2] === \"\") return null;\n\tif (size === 0) return \"unsatisfiable\";\n\tlet start;\n\tlet end;\n\tif (match[1] === \"\") {\n\t\tstart = Math.max(0, size - Number(match[2]));\n\t\tend = size - 1;\n\t} else {\n\t\tstart = Number(match[1]);\n\t\tend = match[2] === \"\" ? size - 1 : Math.min(Number(match[2]), size - 1);\n\t}\n\tif (start > end || start >= size) return \"unsatisfiable\";\n\treturn {\n\t\tstart,\n\t\tend\n\t};\n}\nasync function serveFundusFile(config, kind, fileName, request) {\n\ttry {\n\t\tassertSafeRelativeFilePath(fileName);\n\t} catch (cause) {\n\t\treturn errorResponse(cause, 400);\n\t}\n\tconst filePath = join(kind === \"raw\" ? config.rawDir : config.proxyDir, fileName);\n\tif (!existsSync(filePath)) return errorResponse(/* @__PURE__ */ new Error(`File \"${fileName}\" not found.`), 404);\n\tconst fileStat = await lstat(filePath);\n\tif (!fileStat.isFile() || fileStat.isSymbolicLink()) return errorResponse(/* @__PURE__ */ new Error(`File \"${fileName}\" is not a regular file.`), 400);\n\tconst bytes = new Uint8Array(await readFile(filePath));\n\tconst size = bytes.byteLength;\n\tconst headers = {\n\t\t\"Content-Type\": CONTENT_TYPES[extname(fileName).toLowerCase()] ?? \"application/octet-stream\",\n\t\t\"Cache-Control\": \"no-store\",\n\t\t\"Accept-Ranges\": \"bytes\"\n\t};\n\tconst range = parseByteRange(request.headers.get(\"Range\"), size);\n\tif (range === \"unsatisfiable\") return new Response(null, {\n\t\tstatus: 416,\n\t\theaders: {\n\t\t\t...headers,\n\t\t\t\"Content-Range\": `bytes */${size}`\n\t\t}\n\t});\n\tif (range) {\n\t\tconst slice = bytes.subarray(range.start, range.end + 1);\n\t\treturn new Response(slice, {\n\t\t\tstatus: 206,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t\"Content-Range\": `bytes ${range.start}-${range.end}/${size}`,\n\t\t\t\t\"Content-Length\": String(slice.byteLength)\n\t\t\t}\n\t\t});\n\t}\n\treturn new Response(bytes, { headers: {\n\t\t...headers,\n\t\t\"Content-Length\": String(size)\n\t} });\n}\n//#endregion\nexport { sourceImportResponse as a, serveFundusFile as i, errorResponse as n, routeNotFound as r, apiResponse as t };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js-BTq44nR5.js","sources":["../../../../.svelte-kit/output/server/chunks/http.js"],"sourcesContent":["import { i as assertSafeRelativeFilePath, t as SourceImportError } from \"./contract.js\";\nimport { extname, join } from \"node:path\";\nimport { existsSync } from \"node:fs\";\nimport { lstat, readFile } from \"node:fs/promises\";\n//#region src/lib/server/http.ts\nvar CONTENT_TYPES = {\n\t\".png\": \"image/png\",\n\t\".jpg\": \"image/jpeg\",\n\t\".jpeg\": \"image/jpeg\",\n\t\".webp\": \"image/webp\",\n\t\".gif\": \"image/gif\",\n\t\".avif\": \"image/avif\",\n\t\".svg\": \"image/svg+xml\",\n\t\".mp4\": \"video/mp4\",\n\t\".m4v\": \"video/mp4\",\n\t\".mov\": \"video/quicktime\",\n\t\".webm\": \"video/webm\",\n\t\".mp3\": \"audio/mpeg\",\n\t\".wav\": \"audio/wav\",\n\t\".m4a\": \"audio/mp4\",\n\t\".ogg\": \"audio/ogg\",\n\t\".flac\": \"audio/flac\"\n};\nfunction errorResponse(cause, status) {\n\tconst body = { error: { message: cause instanceof Error ? cause.message : String(cause) } };\n\treturn Response.json(body, { status });\n}\nfunction routeNotFound(event) {\n\treturn errorResponse(/* @__PURE__ */ new Error(`No route for ${event.request.method.toUpperCase()} ${event.url.pathname}.`), 404);\n}\nasync function apiResponse(run) {\n\ttry {\n\t\treturn Response.json(await run());\n\t} catch (cause) {\n\t\treturn errorResponse(cause, 400);\n\t}\n}\nvar SOURCE_ERROR_STATUS = {\n\t\"invalid-input\": 400,\n\t\"not-configured\": 401,\n\tunauthorized: 401,\n\tforbidden: 403,\n\t\"not-found\": 404,\n\t\"ambiguous-tag\": 409,\n\t\"rate-limited\": 429,\n\t\"upstream-failed\": 502,\n\t\"invalid-response\": 502,\n\t\"unsafe-download-url\": 502,\n\t\"download-timeout\": 504,\n\t\"download-too-large\": 502,\n\t\"image-too-large\": 502,\n\t\"stale-import\": 409\n};\nasync function sourceImportResponse(run) {\n\ttry {\n\t\treturn Response.json(await run());\n\t} catch (cause) {\n\t\tconst error = cause instanceof SourceImportError ? cause : new SourceImportError(\"invalid-input\", cause instanceof Error ? cause.message : String(cause));\n\t\tconst body = { error: {\n\t\t\tmessage: error.message,\n\t\t\tcode: error.code,\n\t\t\tretryAfterSeconds: error.retryAfterSeconds\n\t\t} };\n\t\tconst headers = error.code === \"rate-limited\" && error.retryAfterSeconds !== void 0 ? { \"Retry-After\": String(error.retryAfterSeconds) } : void 0;\n\t\treturn Response.json(body, {\n\t\t\tstatus: SOURCE_ERROR_STATUS[error.code],\n\t\t\theaders\n\t\t});\n\t}\n}\nfunction parseByteRange(rangeHeader, size) {\n\tif (!rangeHeader) return null;\n\tconst match = /^bytes=(\\d*)-(\\d*)$/.exec(rangeHeader.trim());\n\tif (!match || match[1] === \"\" && match[2] === \"\") return null;\n\tif (size === 0) return \"unsatisfiable\";\n\tlet start;\n\tlet end;\n\tif (match[1] === \"\") {\n\t\tstart = Math.max(0, size - Number(match[2]));\n\t\tend = size - 1;\n\t} else {\n\t\tstart = Number(match[1]);\n\t\tend = match[2] === \"\" ? size - 1 : Math.min(Number(match[2]), size - 1);\n\t}\n\tif (start > end || start >= size) return \"unsatisfiable\";\n\treturn {\n\t\tstart,\n\t\tend\n\t};\n}\nasync function serveFundusFile(config, kind, fileName, request) {\n\ttry {\n\t\tassertSafeRelativeFilePath(fileName);\n\t} catch (cause) {\n\t\treturn errorResponse(cause, 400);\n\t}\n\tconst filePath = join(kind === \"raw\" ? config.rawDir : config.proxyDir, fileName);\n\tif (!existsSync(filePath)) return errorResponse(/* @__PURE__ */ new Error(`File \"${fileName}\" not found.`), 404);\n\tconst fileStat = await lstat(filePath);\n\tif (!fileStat.isFile() || fileStat.isSymbolicLink()) return errorResponse(/* @__PURE__ */ new Error(`File \"${fileName}\" is not a regular file.`), 400);\n\tconst bytes = new Uint8Array(await readFile(filePath));\n\tconst size = bytes.byteLength;\n\tconst headers = {\n\t\t\"Content-Type\": CONTENT_TYPES[extname(fileName).toLowerCase()] ?? \"application/octet-stream\",\n\t\t\"Cache-Control\": \"no-store\",\n\t\t\"Accept-Ranges\": \"bytes\"\n\t};\n\tconst range = parseByteRange(request.headers.get(\"Range\"), size);\n\tif (range === \"unsatisfiable\") return new Response(null, {\n\t\tstatus: 416,\n\t\theaders: {\n\t\t\t...headers,\n\t\t\t\"Content-Range\": `bytes */${size}`\n\t\t}\n\t});\n\tif (range) {\n\t\tconst slice = bytes.subarray(range.start, range.end + 1);\n\t\treturn new Response(slice, {\n\t\t\tstatus: 206,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t\"Content-Range\": `bytes ${range.start}-${range.end}/${size}`,\n\t\t\t\t\"Content-Length\": String(slice.byteLength)\n\t\t\t}\n\t\t});\n\t}\n\treturn new Response(bytes, { headers: {\n\t\t...headers,\n\t\t\"Content-Length\": String(size)\n\t} });\n}\n//#endregion\nexport { sourceImportResponse as a, serveFundusFile as i, errorResponse as n, routeNotFound as r, apiResponse as t };\n"],"names":[],"mappings":"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"}
@@ -5729,7 +5729,7 @@ var options = {
5729
5729
  app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <link rel=\"icon\" href=\"" + assets + "/favicon.svg\" />\n " + head + "\n </head>\n <body data-sveltekit-preload-data=\"hover\">\n <div style=\"display: contents\">" + body + "</div>\n </body>\n</html>\n",
5730
5730
  error: error_template_default
5731
5731
  },
5732
- version_hash: "1c14gja"
5732
+ version_hash: "6tpb93"
5733
5733
  };
5734
5734
  async function get_hooks() {
5735
5735
  let handle;
@@ -5737,7 +5737,7 @@ async function get_hooks() {
5737
5737
  let handleError;
5738
5738
  let handleValidationError;
5739
5739
  let init;
5740
- ({handle, handleFetch, handleError, handleValidationError, init} = await import('../entries/hooks.server.js-DgZAVFbQ.js'));
5740
+ ({handle, handleFetch, handleError, handleValidationError, init} = await import('../entries/hooks.server.js-C345JVQ2.js'));
5741
5741
  let reroute;
5742
5742
  let transport;
5743
5743
  return {
@@ -5752,4 +5752,4 @@ async function get_hooks() {
5752
5752
  }
5753
5753
 
5754
5754
  export { set_private_env as a, set_public_env as b, public_env as c, set_read_implementation as d, readable as e, get_hooks as g, options as o, parse as p, read_implementation as r, stringify as s, uneval as u, writable as w };
5755
- //# sourceMappingURL=internal.js-DvC1GD8s.js.map
5755
+ //# sourceMappingURL=internal.js-7MmaxxwZ.js.map