fundus 0.14.0 → 0.16.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 (238) hide show
  1. package/README.md +121 -0
  2. package/build/client/_app/immutable/assets/2.X44Wyac-.css +1 -0
  3. package/build/client/_app/immutable/assets/2.X44Wyac-.css.br +0 -0
  4. package/build/client/_app/immutable/assets/2.X44Wyac-.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/{3.C6xo25uI.css → 3.66PJT3JC.css} +1 -1
  6. package/build/client/_app/immutable/assets/3.66PJT3JC.css.br +0 -0
  7. package/build/client/_app/immutable/assets/3.66PJT3JC.css.gz +0 -0
  8. package/build/client/_app/immutable/assets/{AssetSourceMenu.IjDdjx3o.css → AssetSourceMenu.B5fzYfym.css} +1 -1
  9. package/build/client/_app/immutable/assets/AssetSourceMenu.B5fzYfym.css.br +0 -0
  10. package/build/client/_app/immutable/assets/AssetSourceMenu.B5fzYfym.css.gz +0 -0
  11. package/build/client/_app/immutable/chunks/B06eqbax.js +108 -0
  12. package/build/client/_app/immutable/chunks/B06eqbax.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/B06eqbax.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/{dNO-9VOT.js → B97y-eFA.js} +1 -1
  15. package/build/client/_app/immutable/chunks/B97y-eFA.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/B97y-eFA.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/BmOjTxFk.js +1 -0
  18. package/build/client/_app/immutable/chunks/BmOjTxFk.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/BmOjTxFk.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/C9MzfQz6.js +2 -0
  21. package/build/client/_app/immutable/chunks/C9MzfQz6.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/C9MzfQz6.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/CcuyGBqj.js +1 -0
  24. package/build/client/_app/immutable/chunks/CcuyGBqj.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/CcuyGBqj.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/{77p2oEJ1.js → D6c2mfMB.js} +1 -1
  27. package/build/client/_app/immutable/chunks/D6c2mfMB.js.br +2 -0
  28. package/build/client/_app/immutable/chunks/D6c2mfMB.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/DY9QjkXW.js +1 -0
  30. package/build/client/_app/immutable/chunks/DY9QjkXW.js.br +0 -0
  31. package/build/client/_app/immutable/chunks/DY9QjkXW.js.gz +0 -0
  32. package/build/client/_app/immutable/chunks/Z8rcWjXZ.js +3 -0
  33. package/build/client/_app/immutable/chunks/Z8rcWjXZ.js.br +0 -0
  34. package/build/client/_app/immutable/chunks/Z8rcWjXZ.js.gz +0 -0
  35. package/build/client/_app/immutable/entry/app.V1MmmICK.js +2 -0
  36. package/build/client/_app/immutable/entry/app.V1MmmICK.js.br +0 -0
  37. package/build/client/_app/immutable/entry/app.V1MmmICK.js.gz +0 -0
  38. package/build/client/_app/immutable/entry/start.BbyflZUw.js +1 -0
  39. package/build/client/_app/immutable/entry/start.BbyflZUw.js.br +0 -0
  40. package/build/client/_app/immutable/entry/start.BbyflZUw.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/0.BJOUVkow.js +1 -0
  42. package/build/client/_app/immutable/nodes/0.BJOUVkow.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/0.BJOUVkow.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/1.BqoPRvUU.js +1 -0
  45. package/build/client/_app/immutable/nodes/1.BqoPRvUU.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/1.BqoPRvUU.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/2.BSUVFDfW.js +3 -0
  48. package/build/client/_app/immutable/nodes/2.BSUVFDfW.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/2.BSUVFDfW.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/3.B6beFiTQ.js +1 -0
  51. package/build/client/_app/immutable/nodes/3.B6beFiTQ.js.br +0 -0
  52. package/build/client/_app/immutable/nodes/3.B6beFiTQ.js.gz +0 -0
  53. package/build/client/_app/immutable/nodes/4.Dt96q8V4.js +2 -0
  54. package/build/client/_app/immutable/nodes/4.Dt96q8V4.js.br +0 -0
  55. package/build/client/_app/immutable/nodes/4.Dt96q8V4.js.gz +0 -0
  56. package/build/client/_app/version.json +1 -1
  57. package/build/client/_app/version.json.br +0 -0
  58. package/build/client/_app/version.json.gz +0 -0
  59. package/build/handler.js +8 -7
  60. package/build/handler.js.map +1 -1
  61. package/build/index.js +8 -7
  62. package/build/index.js.map +1 -1
  63. package/build/server/chunks/chunks/{context.js-CVuTSPjH.js → context.js-BXaBgcZT.js} +627 -134
  64. package/build/server/chunks/chunks/context.js-BXaBgcZT.js.map +1 -0
  65. package/build/server/chunks/chunks/{contract.js-itFN0Gon.js → contract.js-IY1F-HE_.js} +94 -58
  66. package/build/server/chunks/chunks/contract.js-IY1F-HE_.js.map +1 -0
  67. package/build/server/chunks/chunks/{core.js-CABVXpby.js → core.js-D1sYC_78.js} +144 -143
  68. package/build/server/chunks/chunks/core.js-D1sYC_78.js.map +1 -0
  69. package/build/server/chunks/chunks/{exports.js-B13PkE0J.js → exports.js-B5DLeNXr.js} +2 -2
  70. package/build/server/chunks/chunks/{exports.js-B13PkE0J.js.map → exports.js-B5DLeNXr.js.map} +1 -1
  71. package/build/server/chunks/chunks/{http.js-ChQRRKfZ.js → http.js-CzB9Igb0.js} +2 -2
  72. package/build/server/chunks/chunks/{http.js-ChQRRKfZ.js.map → http.js-CzB9Igb0.js.map} +1 -1
  73. package/build/server/chunks/chunks/{internal.js-DlKoWKM-.js → internal.js-HE35Pm1C.js} +5 -3
  74. package/build/server/chunks/chunks/internal.js-HE35Pm1C.js.map +1 -0
  75. package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -1
  76. package/build/server/chunks/chunks/{manifest-membership.js-BnSECWpJ.js → manifest-membership.js-Cm_2fU-Z.js} +2 -2
  77. package/build/server/chunks/chunks/{manifest-membership.js-BnSECWpJ.js.map → manifest-membership.js-Cm_2fU-Z.js.map} +1 -1
  78. package/build/server/chunks/chunks/{raw-reconciliation.js-ZEOCk_jA.js → raw-reconciliation.js-1_IwPhKb.js} +3 -3
  79. package/build/server/chunks/chunks/raw-reconciliation.js-1_IwPhKb.js.map +1 -0
  80. package/build/server/chunks/chunks/{raw-reconciliation2.js-CscuoBC2.js → raw-reconciliation2.js-CcO9li5n.js} +2 -2
  81. package/build/server/chunks/chunks/{raw-reconciliation2.js-CscuoBC2.js.map → raw-reconciliation2.js-CcO9li5n.js.map} +1 -1
  82. package/build/server/chunks/chunks/{shared.js-DKt4pwWi.js → shared.js-MR8sPPTu.js} +2 -2
  83. package/build/server/chunks/chunks/{shared.js-DKt4pwWi.js.map → shared.js-MR8sPPTu.js.map} +1 -1
  84. package/build/server/chunks/chunks/{utils.js-BYMC-4Wt.js → utils.js-C2UFBITa.js} +3 -3
  85. package/build/server/chunks/chunks/{utils.js-BYMC-4Wt.js.map → utils.js-C2UFBITa.js.map} +1 -1
  86. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-z988EDp2.js → _server.ts.js-BnRJ5Qnd.js} +6 -6
  87. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-z988EDp2.js.map → _server.ts.js-BnRJ5Qnd.js.map} +1 -1
  88. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-C68ru6gS.js → _server.ts.js-BZPR6n5n.js} +9 -7
  89. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-C68ru6gS.js.map → _server.ts.js-BZPR6n5n.js.map} +1 -1
  90. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/{_server.ts.js-C0tk6RFk.js → _server.ts.js-DiBS3A0C.js} +9 -7
  91. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/{_server.ts.js-C0tk6RFk.js.map → _server.ts.js-DiBS3A0C.js.map} +1 -1
  92. package/build/server/chunks/entries/endpoints/api/assets/_id_/reimport/{_server.ts.js-I03oZuo8.js → _server.ts.js-LOO6qm2-.js} +9 -7
  93. package/build/server/chunks/entries/endpoints/api/assets/_id_/reimport/{_server.ts.js-I03oZuo8.js.map → _server.ts.js-LOO6qm2-.js.map} +1 -1
  94. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-BsQB8YDq.js → _server.ts.js-CRtJJoSs.js} +9 -7
  95. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-BsQB8YDq.js.map → _server.ts.js-CRtJJoSs.js.map} +1 -1
  96. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-CJuFE6Fb.js → _server.ts.js-Ds4zCZ9H.js} +9 -7
  97. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-CJuFE6Fb.js.map → _server.ts.js-Ds4zCZ9H.js.map} +1 -1
  98. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-DuOZRRiA.js → _server.ts.js-DD4N8pcj.js} +9 -7
  99. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-DuOZRRiA.js.map → _server.ts.js-DD4N8pcj.js.map} +1 -1
  100. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-DGzYpQbv.js → _server.ts.js-CZev9aYz.js} +9 -7
  101. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-DGzYpQbv.js.map → _server.ts.js-CZev9aYz.js.map} +1 -1
  102. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-B045QoCA.js → _server.ts.js-MBDVW0q1.js} +9 -7
  103. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-B045QoCA.js.map → _server.ts.js-MBDVW0q1.js.map} +1 -1
  104. package/build/server/chunks/entries/endpoints/api/imports/{_server.ts.js-HUkVdz19.js → _server.ts.js-C7naXnsR.js} +9 -7
  105. package/build/server/chunks/entries/endpoints/api/imports/{_server.ts.js-HUkVdz19.js.map → _server.ts.js-C7naXnsR.js.map} +1 -1
  106. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-ry509mom.js → _server.ts.js-DuGyRdf3.js} +9 -7
  107. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-ry509mom.js.map → _server.ts.js-DuGyRdf3.js.map} +1 -1
  108. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-DU0J7U25.js → _server.ts.js-0-ZCt0qH.js} +9 -7
  109. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-DU0J7U25.js.map → _server.ts.js-0-ZCt0qH.js.map} +1 -1
  110. package/build/server/chunks/entries/endpoints/api/raw/adopt/{_server.ts.js-AZIV2PIn.js → _server.ts.js-DFYU_sZL.js} +9 -7
  111. package/build/server/chunks/entries/endpoints/api/raw/adopt/{_server.ts.js-AZIV2PIn.js.map → _server.ts.js-DFYU_sZL.js.map} +1 -1
  112. package/build/server/chunks/entries/endpoints/api/raw/edited/accept/{_server.ts.js-CDL0hCfM.js → _server.ts.js-BqJpK0sJ.js} +9 -7
  113. package/build/server/chunks/entries/endpoints/api/raw/edited/accept/{_server.ts.js-CDL0hCfM.js.map → _server.ts.js-BqJpK0sJ.js.map} +1 -1
  114. package/build/server/chunks/entries/endpoints/api/raw/edited/dismiss/{_server.ts.js-B13c17fq.js → _server.ts.js--LSqADJp.js} +9 -7
  115. package/build/server/chunks/entries/endpoints/api/raw/edited/dismiss/{_server.ts.js-B13c17fq.js.map → _server.ts.js--LSqADJp.js.map} +1 -1
  116. package/build/server/chunks/entries/endpoints/api/reconcile/{_server.ts.js-BCxjyAGC.js → _server.ts.js-DcL8nYDM.js} +9 -7
  117. package/build/server/chunks/entries/endpoints/api/reconcile/{_server.ts.js-BCxjyAGC.js.map → _server.ts.js-DcL8nYDM.js.map} +1 -1
  118. package/build/server/chunks/entries/endpoints/api/reveal/{_server.ts.js-BveeMZc2.js → _server.ts.js-72OcyLfP.js} +9 -7
  119. package/build/server/chunks/entries/endpoints/api/reveal/{_server.ts.js-BveeMZc2.js.map → _server.ts.js-72OcyLfP.js.map} +1 -1
  120. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-BZjTd9a0.js → _server.ts.js-D0bOxmG0.js} +9 -7
  121. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-BZjTd9a0.js.map → _server.ts.js-D0bOxmG0.js.map} +1 -1
  122. package/build/server/chunks/entries/endpoints/api/usage/{_server.ts.js-BbTfPvC9.js → _server.ts.js-BjDVCRNV.js} +9 -7
  123. package/build/server/chunks/entries/endpoints/api/usage/{_server.ts.js-BbTfPvC9.js.map → _server.ts.js-BjDVCRNV.js.map} +1 -1
  124. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-8VPJMLBk.js → _server.ts.js-CndfoXXd.js} +6 -6
  125. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-8VPJMLBk.js.map → _server.ts.js-CndfoXXd.js.map} +1 -1
  126. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-BqR2J2sB.js → _server.ts.js-Ck1mgbk5.js} +9 -7
  127. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-BqR2J2sB.js.map → _server.ts.js-Ck1mgbk5.js.map} +1 -1
  128. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-DbA28dCY.js → _server.ts.js-lZ9oP8tz.js} +9 -7
  129. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-DbA28dCY.js.map → _server.ts.js-lZ9oP8tz.js.map} +1 -1
  130. package/build/server/chunks/entries/{hooks.server.js-9PBc_3Jh.js → hooks.server.js-DQ6l2RSK.js} +8 -6
  131. package/build/server/chunks/entries/{hooks.server.js-9PBc_3Jh.js.map → hooks.server.js-DQ6l2RSK.js.map} +1 -1
  132. package/build/server/chunks/{handler-XxBNCHhb.js → handler-Dfk_4a-r.js} +5 -5
  133. package/build/server/chunks/{handler-XxBNCHhb.js.map → handler-Dfk_4a-r.js.map} +1 -1
  134. package/build/server/chunks/{index.js-B_76Gq5Y.js → index.js-O3Wl1zok.js} +5 -5
  135. package/build/server/chunks/{index.js-B_76Gq5Y.js.map → index.js-O3Wl1zok.js.map} +1 -1
  136. package/build/server/chunks/{manifest.js-C2MZZt3o.js → manifest.js-51nEZnKQ.js} +29 -29
  137. package/build/server/chunks/{manifest.js-C2MZZt3o.js.map → manifest.js-51nEZnKQ.js.map} +1 -1
  138. package/build/server/chunks/nodes/{0.js-BLURyWmd.js → 0.js-DjqMfDtB.js} +2 -2
  139. package/build/server/chunks/nodes/{0.js-BLURyWmd.js.map → 0.js-DjqMfDtB.js.map} +1 -1
  140. package/build/server/chunks/nodes/1.js-BwfSLYJH.js +7 -0
  141. package/build/server/chunks/nodes/{1.js-CITI7d3d.js.map → 1.js-BwfSLYJH.js.map} +1 -1
  142. package/build/server/chunks/nodes/2.js-buHbEytf.js +7 -0
  143. package/build/server/chunks/nodes/2.js-buHbEytf.js.map +1 -0
  144. package/build/server/chunks/nodes/3.js-D7_hF0qp.js +7 -0
  145. package/build/server/chunks/nodes/3.js-D7_hF0qp.js.map +1 -0
  146. package/build/server/chunks/nodes/4.js-D58M2chZ.js +7 -0
  147. package/build/server/chunks/nodes/{4.js-BRlAiVnn.js.map → 4.js-D58M2chZ.js.map} +1 -1
  148. package/dist/config.d.ts +3 -3
  149. package/dist/config.js +2 -2
  150. package/dist/core/api-types.d.ts +22 -2
  151. package/dist/core/config.d.ts +82 -0
  152. package/dist/core/config.js +9 -0
  153. package/dist/core/index.d.ts +10 -5
  154. package/dist/core/index.js +5 -2
  155. package/dist/core/library-validation.d.ts +13 -0
  156. package/dist/core/library-validation.js +48 -0
  157. package/dist/core/library.d.ts +19 -0
  158. package/dist/core/library.js +4 -4
  159. package/dist/core/manifest-membership.d.ts +2 -2
  160. package/dist/core/package-declaration.d.ts +43 -0
  161. package/dist/core/package-declaration.js +80 -0
  162. package/dist/core/package-merge.d.ts +65 -0
  163. package/dist/core/package-merge.js +173 -0
  164. package/dist/core/reference-graph.d.ts +3 -3
  165. package/dist/runtime/components/Image.svelte +5 -6
  166. package/dist/runtime/components/Image.svelte.d.ts +2 -3
  167. package/dist/server/build.js +26 -11
  168. package/dist/server/check.d.ts +13 -3
  169. package/dist/server/check.js +112 -24
  170. package/dist/server/codegen.d.ts +3 -1
  171. package/dist/server/codegen.js +18 -0
  172. package/dist/server/config-loader.d.ts +35 -1
  173. package/dist/server/config-loader.js +185 -4
  174. package/dist/server/library-store.d.ts +11 -1
  175. package/dist/server/library-store.js +42 -60
  176. package/dist/server/operations.js +162 -47
  177. package/package.json +1 -1
  178. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css +0 -1
  179. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css.br +0 -0
  180. package/build/client/_app/immutable/assets/2.C-1MfvLQ.css.gz +0 -0
  181. package/build/client/_app/immutable/assets/3.C6xo25uI.css.br +0 -0
  182. package/build/client/_app/immutable/assets/3.C6xo25uI.css.gz +0 -0
  183. package/build/client/_app/immutable/assets/AssetSourceMenu.IjDdjx3o.css.br +0 -0
  184. package/build/client/_app/immutable/assets/AssetSourceMenu.IjDdjx3o.css.gz +0 -0
  185. package/build/client/_app/immutable/chunks/77p2oEJ1.js.br +0 -0
  186. package/build/client/_app/immutable/chunks/77p2oEJ1.js.gz +0 -0
  187. package/build/client/_app/immutable/chunks/B9HdDE5n.js +0 -1
  188. package/build/client/_app/immutable/chunks/B9HdDE5n.js.br +0 -0
  189. package/build/client/_app/immutable/chunks/B9HdDE5n.js.gz +0 -0
  190. package/build/client/_app/immutable/chunks/B_PWcB6g.js +0 -108
  191. package/build/client/_app/immutable/chunks/B_PWcB6g.js.br +0 -0
  192. package/build/client/_app/immutable/chunks/B_PWcB6g.js.gz +0 -0
  193. package/build/client/_app/immutable/chunks/Q50krHyn.js +0 -2
  194. package/build/client/_app/immutable/chunks/Q50krHyn.js.br +0 -0
  195. package/build/client/_app/immutable/chunks/Q50krHyn.js.gz +0 -0
  196. package/build/client/_app/immutable/chunks/RgXSPQ_h.js +0 -1
  197. package/build/client/_app/immutable/chunks/RgXSPQ_h.js.br +0 -0
  198. package/build/client/_app/immutable/chunks/RgXSPQ_h.js.gz +0 -0
  199. package/build/client/_app/immutable/chunks/YpiA5Xry.js +0 -3
  200. package/build/client/_app/immutable/chunks/YpiA5Xry.js.br +0 -0
  201. package/build/client/_app/immutable/chunks/YpiA5Xry.js.gz +0 -0
  202. package/build/client/_app/immutable/chunks/dNO-9VOT.js.br +0 -0
  203. package/build/client/_app/immutable/chunks/dNO-9VOT.js.gz +0 -0
  204. package/build/client/_app/immutable/chunks/hUfV2O0k.js +0 -1
  205. package/build/client/_app/immutable/chunks/hUfV2O0k.js.br +0 -0
  206. package/build/client/_app/immutable/chunks/hUfV2O0k.js.gz +0 -0
  207. package/build/client/_app/immutable/entry/app.BsvwTApt.js +0 -2
  208. package/build/client/_app/immutable/entry/app.BsvwTApt.js.br +0 -0
  209. package/build/client/_app/immutable/entry/app.BsvwTApt.js.gz +0 -0
  210. package/build/client/_app/immutable/entry/start.BdjLMMsY.js +0 -1
  211. package/build/client/_app/immutable/entry/start.BdjLMMsY.js.br +0 -0
  212. package/build/client/_app/immutable/entry/start.BdjLMMsY.js.gz +0 -0
  213. package/build/client/_app/immutable/nodes/0.CjQfQrD6.js +0 -1
  214. package/build/client/_app/immutable/nodes/0.CjQfQrD6.js.br +0 -0
  215. package/build/client/_app/immutable/nodes/0.CjQfQrD6.js.gz +0 -0
  216. package/build/client/_app/immutable/nodes/1.DyPcUKIh.js +0 -1
  217. package/build/client/_app/immutable/nodes/1.DyPcUKIh.js.br +0 -2
  218. package/build/client/_app/immutable/nodes/1.DyPcUKIh.js.gz +0 -0
  219. package/build/client/_app/immutable/nodes/2.CworwA2R.js +0 -3
  220. package/build/client/_app/immutable/nodes/2.CworwA2R.js.br +0 -0
  221. package/build/client/_app/immutable/nodes/2.CworwA2R.js.gz +0 -0
  222. package/build/client/_app/immutable/nodes/3.BKqbML1T.js +0 -1
  223. package/build/client/_app/immutable/nodes/3.BKqbML1T.js.br +0 -0
  224. package/build/client/_app/immutable/nodes/3.BKqbML1T.js.gz +0 -0
  225. package/build/client/_app/immutable/nodes/4.Cmigd8CT.js +0 -2
  226. package/build/client/_app/immutable/nodes/4.Cmigd8CT.js.br +0 -0
  227. package/build/client/_app/immutable/nodes/4.Cmigd8CT.js.gz +0 -0
  228. package/build/server/chunks/chunks/context.js-CVuTSPjH.js.map +0 -1
  229. package/build/server/chunks/chunks/contract.js-itFN0Gon.js.map +0 -1
  230. package/build/server/chunks/chunks/core.js-CABVXpby.js.map +0 -1
  231. package/build/server/chunks/chunks/internal.js-DlKoWKM-.js.map +0 -1
  232. package/build/server/chunks/chunks/raw-reconciliation.js-ZEOCk_jA.js.map +0 -1
  233. package/build/server/chunks/nodes/1.js-CITI7d3d.js +0 -7
  234. package/build/server/chunks/nodes/2.js-DAls5TjF.js +0 -7
  235. package/build/server/chunks/nodes/2.js-DAls5TjF.js.map +0 -1
  236. package/build/server/chunks/nodes/3.js-CesAmg_E.js +0 -7
  237. package/build/server/chunks/nodes/3.js-CesAmg_E.js.map +0 -1
  238. package/build/server/chunks/nodes/4.js-BRlAiVnn.js +0 -7
@@ -1,7 +1,7 @@
1
- import { a as plugins, b as audioPlugin, d as chromaKeyVideoPlugin, v as videoPlugin, s as slicePlugin, e as imagePlugin, n as normalizeFolderPath, g as canonicalizeParameters, h as folderOfRawPath, j as rawFileNameOfPath, f as folderPathError, k as parentFolderPath, l as folderNameError, m as joinFolderPath, o as folderNameOf, q as isFolderOrDescendant, t as replaceFolderPrefix, u as portableFolderPathKey, c as compareCodeUnits, w as isCustomFfmpegVideoPreset, x as processedSliceInsets, y as defaultInsetsForSize, F as FOLDER_SENTINEL, r as rawFilePathError, z as materializeFfmpegCommand, A as slicedAxesFor, B as isAssetReference, C as validateVideoPreset, V as VIDEO_BUILT_IN_PRESETS, D as validateAudioPreset, E as AUDIO_BUILT_IN_PRESETS, G as validateImagePreset, I as IMAGE_BUILT_IN_PRESETS, S as SLICE_BUILT_IN_PRESETS } from './core.js-CABVXpby.js';
2
- import { a as assetIdError, r as referenceErrors, c as collectAllReferences, b as computeLibraryMembership, m as manifestNameError, d as allDeliveredAssetIds, t as topologicalReferenceOrder } from './manifest-membership.js-BnSECWpJ.js';
1
+ import { a as plugins, b as audioPlugin, d as chromaKeyVideoPlugin, v as videoPlugin, s as slicePlugin, e as imagePlugin, n as normalizeFolderPath, g as canonicalizeParameters, h as folderOfRawPath, j as rawFileNameOfPath, f as folderPathError, k as parentFolderPath, l as folderNameError, m as joinFolderPath, o as folderNameOf, q as isFolderOrDescendant, t as replaceFolderPrefix, u as portableFolderPathKey, c as compareCodeUnits, w as isCustomFfmpegVideoPreset, x as processedSliceInsets, y as defaultInsetsForSize, F as FOLDER_SENTINEL, r as rawFilePathError, z as materializeFfmpegCommand, A as slicedAxesFor, B as isAssetReference, C as validateVideoPreset, V as VIDEO_BUILT_IN_PRESETS, D as validateAudioPreset, E as AUDIO_BUILT_IN_PRESETS, G as validateImagePreset, I as IMAGE_BUILT_IN_PRESETS, S as SLICE_BUILT_IN_PRESETS } from './core.js-D1sYC_78.js';
2
+ import { a as assetIdError, c as collectAllReferences, b as computeLibraryMembership, r as referenceErrors, m as manifestNameError, d as allDeliveredAssetIds, t as topologicalReferenceOrder } from './manifest-membership.js-Cm_2fU-Z.js';
3
3
  import { m as manifestColorError, a as manifestEmojiError } from './manifest-appearance.js-DTk355LQ.js';
4
- import { v as verifyStableRawFile } from './raw-reconciliation2.js-CscuoBC2.js';
4
+ import { v as verifyStableRawFile } from './raw-reconciliation2.js-CcO9li5n.js';
5
5
  import { join, extname, dirname, isAbsolute, basename, resolve } from 'node:path';
6
6
  import { existsSync } from 'node:fs';
7
7
  import { readFile, mkdir, writeFile, rename, unlink, rm, stat, readdir, mkdtemp } from 'node:fs/promises';
@@ -148,6 +148,49 @@ function serializeLibrary(library) {
148
148
  }), null, " ")}\n`;
149
149
  }
150
150
  //#endregion
151
+ //#region src/lib/core/library-validation.ts
152
+ function flatLibraryIssues(library, plugins) {
153
+ const issues = [];
154
+ for (const [name, record] of Object.entries(library.manifests)) {
155
+ const nameProblem = manifestNameError(name);
156
+ if (nameProblem) issues.push({ message: nameProblem });
157
+ if (record.color !== void 0) {
158
+ const colorProblem = manifestColorError(record.color);
159
+ if (colorProblem) issues.push({ message: `Manifest "${name}": ${colorProblem}` });
160
+ }
161
+ if (record.emoji !== void 0) {
162
+ const emojiProblem = manifestEmojiError(record.emoji);
163
+ if (emojiProblem) issues.push({ message: `Manifest "${name}": ${emojiProblem}` });
164
+ }
165
+ }
166
+ for (const [assetId, record] of Object.entries(library.assets)) {
167
+ const idProblem = assetIdError(assetId);
168
+ if (idProblem) issues.push({
169
+ assetId,
170
+ message: idProblem
171
+ });
172
+ const plugin = plugins[record.type];
173
+ if (!plugin) issues.push({
174
+ assetId,
175
+ message: `Unknown asset type "${record.type}".`
176
+ });
177
+ else try {
178
+ plugin.validateParameters(record.parameters);
179
+ } catch (cause) {
180
+ issues.push({
181
+ assetId,
182
+ message: `Invalid parameters: ${cause instanceof Error ? cause.message : String(cause)}`
183
+ });
184
+ }
185
+ for (const manifest of record.manifests) if (!library.manifests[manifest]) issues.push({
186
+ assetId,
187
+ message: `Unknown manifest "${manifest}".`
188
+ });
189
+ }
190
+ issues.push(...referenceErrors(library, collectAllReferences(library, plugins)));
191
+ return issues;
192
+ }
193
+ //#endregion
151
194
  //#region src/lib/server/processing/ffmpeg.ts
152
195
  /**
153
196
  * The ffmpeg/ffprobe toolchain layer: binary resolution (bundled `-static`
@@ -871,6 +914,18 @@ function kebabCaseFromCamel(name) {
871
914
  function manifestModuleFileName(manifestName) {
872
915
  return `${kebabCaseFromCamel(manifestName)}.generated.ts`;
873
916
  }
917
+ /** Two manifest names that would generate the same kebab-case module file. */
918
+ function manifestModuleCollisionIssues(manifests) {
919
+ const issues = [];
920
+ const namesByModuleFile = /* @__PURE__ */ new Map();
921
+ for (const name of Object.keys(manifests)) {
922
+ const fileName = manifestModuleFileName(name);
923
+ const existingName = namesByModuleFile.get(fileName);
924
+ if (existingName !== void 0) issues.push({ message: `Manifests "${existingName}" and "${name}" would both generate "${fileName}".` });
925
+ else namesByModuleFile.set(fileName, name);
926
+ }
927
+ return issues;
928
+ }
874
929
  /**
875
930
  * Build the entry data codegen emits for one asset — delegated to
876
931
  * the owning server plugin's `buildManifestEntry`. Reference fields
@@ -1303,7 +1358,8 @@ var LibraryStore = class {
1303
1358
  const folder = options.folder === void 0 ? "" : normalizeFolderPath(options.folder);
1304
1359
  this.#requireFolder(library, folder);
1305
1360
  const manifests = [...new Set(options.manifests ?? [])].sort();
1306
- for (const manifest of manifests) if (!Object.hasOwn(library.manifests, manifest)) throw new Error(`Unknown manifest "${manifest}".`);
1361
+ const validManifests = this.#validManifestNames(library);
1362
+ for (const manifest of manifests) if (!validManifests.has(manifest)) throw new Error(`Unknown manifest "${manifest}".`);
1307
1363
  const rawDirectory = join(this.#config.rawDir, folder);
1308
1364
  await mkdir(rawDirectory, { recursive: true });
1309
1365
  const storedName = this.#uniqueRawName(sanitizeFileName(options.fileName), folder);
@@ -1313,12 +1369,16 @@ var LibraryStore = class {
1313
1369
  let installed = false;
1314
1370
  try {
1315
1371
  await writeFile(temporaryPath, options.bytes);
1316
- let parameters = plugin.descriptor.validateParameters(plugin.descriptor.defaultParameters(plugin.pluginConfig(this.#config)));
1317
- if (prepareParameters) parameters = plugin.descriptor.validateParameters(await prepareParameters({
1318
- rawPath: temporaryPath,
1319
- rawFileName: storedName,
1320
- parameters
1321
- }));
1372
+ let parameters;
1373
+ if (options.parametersOverride !== void 0) parameters = options.parametersOverride;
1374
+ else {
1375
+ parameters = plugin.descriptor.validateParameters(plugin.descriptor.defaultParameters(plugin.pluginConfig(this.#config)));
1376
+ if (prepareParameters) parameters = plugin.descriptor.validateParameters(await prepareParameters({
1377
+ rawPath: temporaryPath,
1378
+ rawFileName: storedName,
1379
+ parameters
1380
+ }));
1381
+ }
1322
1382
  const record = {
1323
1383
  type: options.type,
1324
1384
  raw: storedPath,
@@ -1364,7 +1424,7 @@ var LibraryStore = class {
1364
1424
  if (sourceOptions) {
1365
1425
  const currentSource = record.importSource ? canonicalizeParameters(record.importSource) : null;
1366
1426
  if (record.raw !== sourceOptions.expected.raw || record.rawHash !== sourceOptions.expected.rawHash || record.type !== sourceOptions.expected.type || currentSource !== sourceOptions.expected.canonicalSource) throw new Error("stale-import");
1367
- const { verifyStableRawFile } = await import('./raw-reconciliation.js-ZEOCk_jA.js');
1427
+ const { verifyStableRawFile } = await import('./raw-reconciliation.js-1_IwPhKb.js');
1368
1428
  try {
1369
1429
  await verifyStableRawFile(join(this.#config.rawDir, record.raw), sourceOptions.expected.rawHash);
1370
1430
  } catch {
@@ -1430,7 +1490,7 @@ var LibraryStore = class {
1430
1490
  const record = this.#requireAsset(library, id);
1431
1491
  if (record.raw !== expected.raw || record.rawHash !== expected.rawHash || record.type !== expected.type || !record.importSource || canonicalizeParameters(record.importSource) !== expected.canonicalSource) throw new Error("stale-import");
1432
1492
  const absolutePath = join(this.#config.rawDir, record.raw);
1433
- const { verifyStableRawFile } = await import('./raw-reconciliation.js-ZEOCk_jA.js');
1493
+ const { verifyStableRawFile } = await import('./raw-reconciliation.js-1_IwPhKb.js');
1434
1494
  try {
1435
1495
  await verifyStableRawFile(absolutePath, expected.rawHash);
1436
1496
  } catch {
@@ -1486,7 +1546,8 @@ var LibraryStore = class {
1486
1546
  const library = await this.read();
1487
1547
  const record = this.#requireAsset(library, id);
1488
1548
  const unique = [...new Set(manifests)];
1489
- for (const name of unique) if (!Object.hasOwn(library.manifests, name)) throw new Error(`Unknown manifest "${name}".`);
1549
+ const validManifests = this.#validManifestNames(library);
1550
+ for (const name of unique) if (!validManifests.has(name)) throw new Error(`Unknown manifest "${name}".`);
1490
1551
  record.manifests = unique.sort();
1491
1552
  await this.write(library);
1492
1553
  return library;
@@ -1857,7 +1918,8 @@ var LibraryStore = class {
1857
1918
  * type, dangling raw pointer, invalid parameters, unknown manifest names,
1858
1919
  * and reference errors (dangling target, type mismatch, cycles).
1859
1920
  */
1860
- async validate(library) {
1921
+ async validate(library, options = {}) {
1922
+ const flatSpace = options.flatSpace ?? true;
1861
1923
  const issues = [];
1862
1924
  const folderKeys = /* @__PURE__ */ new Map();
1863
1925
  for (const folder of library.folders) {
@@ -1872,44 +1934,7 @@ var LibraryStore = class {
1872
1934
  if (parent !== "" && !library.folders.includes(parent)) issues.push({ message: `Folder "${folder}" has missing parent "${parent}".` });
1873
1935
  for (const root of [this.#config.rawDir, this.#config.proxyDir]) if (!existsSync(join(root, folder, ".gitkeep"))) issues.push({ message: `Folder "${folder}" is not mirrored with a .gitkeep in ${root}.` });
1874
1936
  }
1875
- for (const [name, record] of Object.entries(library.manifests)) {
1876
- const nameProblem = manifestNameError(name);
1877
- if (nameProblem) issues.push({ message: nameProblem });
1878
- if (record.color !== void 0) {
1879
- const colorProblem = manifestColorError(record.color);
1880
- if (colorProblem) issues.push({ message: `Manifest "${name}": ${colorProblem}` });
1881
- }
1882
- if (record.emoji !== void 0) {
1883
- const emojiProblem = manifestEmojiError(record.emoji);
1884
- if (emojiProblem) issues.push({ message: `Manifest "${name}": ${emojiProblem}` });
1885
- }
1886
- }
1887
- const namesByModuleFile = /* @__PURE__ */ new Map();
1888
- for (const name of Object.keys(library.manifests)) {
1889
- const fileName = manifestModuleFileName(name);
1890
- const existingName = namesByModuleFile.get(fileName);
1891
- if (existingName !== void 0) issues.push({ message: `Manifests "${existingName}" and "${name}" would both generate "${fileName}".` });
1892
- else namesByModuleFile.set(fileName, name);
1893
- }
1894
1937
  for (const [assetId, record] of Object.entries(library.assets)) {
1895
- const idProblem = assetIdError(assetId);
1896
- if (idProblem) issues.push({
1897
- assetId,
1898
- message: idProblem
1899
- });
1900
- const plugin = this.#registry[record.type];
1901
- if (!plugin) issues.push({
1902
- assetId,
1903
- message: `Unknown asset type "${record.type}".`
1904
- });
1905
- else try {
1906
- plugin.descriptor.validateParameters(record.parameters);
1907
- } catch (cause) {
1908
- issues.push({
1909
- assetId,
1910
- message: `Invalid parameters: ${cause instanceof Error ? cause.message : String(cause)}`
1911
- });
1912
- }
1913
1938
  try {
1914
1939
  assertSafeRelativeFilePath(record.raw);
1915
1940
  } catch (cause) {
@@ -1927,12 +1952,11 @@ var LibraryStore = class {
1927
1952
  assetId,
1928
1953
  message: `Raw file "${record.raw}" is missing from the raw directory.`
1929
1954
  });
1930
- for (const manifest of record.manifests) if (!library.manifests[manifest]) issues.push({
1931
- assetId,
1932
- message: `Unknown manifest "${manifest}".`
1933
- });
1934
1955
  }
1935
- issues.push(...referenceErrors(library, collectAllReferences(library, descriptorsByType(this.#registry))));
1956
+ if (flatSpace) {
1957
+ issues.push(...flatLibraryIssues(library, descriptorsByType(this.#registry)));
1958
+ issues.push(...manifestModuleCollisionIssues(library.manifests));
1959
+ }
1936
1960
  return issues;
1937
1961
  }
1938
1962
  async #deleteProxiesOf(assetId) {
@@ -1946,6 +1970,18 @@ var LibraryStore = class {
1946
1970
  if (!Object.hasOwn(library.assets, id)) throw new Error(`Unknown asset "${id}".`);
1947
1971
  return library.assets[id];
1948
1972
  }
1973
+ /**
1974
+ * Valid manifest names for asset membership: the host library's own manifests
1975
+ * plus any a configured Package introduces. The effective (merged) library
1976
+ * unions both, so a host asset (or slot fill) may be placed into a
1977
+ * Package-introduced manifest — validating against the host manifests alone
1978
+ * would wrongly reject that placement.
1979
+ */
1980
+ #validManifestNames(library) {
1981
+ const names = new Set(Object.keys(library.manifests));
1982
+ for (const pkg of this.#config.packages ?? []) for (const name of Object.keys(pkg.declaration.manifests)) names.add(name);
1983
+ return names;
1984
+ }
1949
1985
  /** Resolve a non-colliding raw file name, appending `-1`, `-2`, … before the extension. */
1950
1986
  #uniqueRawName(fileName, folder) {
1951
1987
  if (!existsSync(join(this.#config.rawDir, folder, fileName))) return fileName;
@@ -1982,5 +2018,5 @@ function invalidInput(message) {
1982
2018
  throw new SourceImportError("invalid-input", message);
1983
2019
  }
1984
2020
 
1985
- export { LibraryStore as L, SourceImportError as S, serializeLibrary as a, serverPluginForType as b, invalidInput as c, descriptorsByType as d, encodeRelativePathForUrl as e, parseLibrary as f, generateManifestModules as g, assertSafeRelativeFilePath as h, isRecord as i, locateGeneratedAssetDeclaration as l, manifestModuleFileName as m, processAssets as p, readCurrentProxy as r, serverPluginsByType as s };
1986
- //# sourceMappingURL=contract.js-itFN0Gon.js.map
2021
+ export { LibraryStore as L, SourceImportError as S, serializeLibrary as a, serverPluginForType as b, manifestModuleCollisionIssues as c, descriptorsByType as d, encodeRelativePathForUrl as e, flatLibraryIssues as f, generateManifestModules as g, invalidInput as h, isRecord as i, parseLibrary as j, isRecord$1 as k, locateGeneratedAssetDeclaration as l, manifestModuleFileName as m, assertSafeKey as n, parseManifestRecord as o, processAssets as p, parseImportSource as q, readCurrentProxy as r, serverPluginsByType as s, assertSafeRelativeFilePath as t };
2022
+ //# sourceMappingURL=contract.js-IY1F-HE_.js.map