emdash 1.0.1 → 1.2.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 (1439) hide show
  1. package/dist/action-token-BdWad2YG.mjs +26 -0
  2. package/dist/action-token-BdWad2YG.mjs.map +1 -0
  3. package/dist/activation-xomsCMJg.mjs +387 -0
  4. package/dist/activation-xomsCMJg.mjs.map +1 -0
  5. package/dist/adapters-B4-nbElt.d.mts +173 -0
  6. package/dist/adapters-B4-nbElt.d.mts.map +1 -0
  7. package/dist/allowed-origins-CLpHGGlc.mjs +116 -0
  8. package/dist/allowed-origins-CLpHGGlc.mjs.map +1 -0
  9. package/dist/api/route-utils.d.mts +4 -4
  10. package/dist/api/route-utils.d.mts.map +1 -1
  11. package/dist/api/route-utils.mjs +49 -48
  12. package/dist/api/route-utils.mjs.map +1 -1
  13. package/dist/api/schemas/index.d.mts +2 -2
  14. package/dist/api/schemas/index.mjs +10 -10
  15. package/dist/api-DBw_IWoi.mjs +5024 -0
  16. package/dist/api-DBw_IWoi.mjs.map +1 -0
  17. package/dist/api-tokens-B0ZipcZ-.mjs +173 -0
  18. package/dist/api-tokens-B0ZipcZ-.mjs.map +1 -0
  19. package/dist/apply-Cx48saFC.mjs +1680 -0
  20. package/dist/apply-Cx48saFC.mjs.map +1 -0
  21. package/dist/approvals-BXgtXA2s.mjs +460 -0
  22. package/dist/approvals-BXgtXA2s.mjs.map +1 -0
  23. package/dist/artifact-fetch-DsRczRGG.mjs +659 -0
  24. package/dist/artifact-fetch-DsRczRGG.mjs.map +1 -0
  25. package/dist/artifacts-D-O-qj9C.mjs +307 -0
  26. package/dist/artifacts-D-O-qj9C.mjs.map +1 -0
  27. package/dist/astro/image-endpoint.d.mts.map +1 -1
  28. package/dist/astro/image-endpoint.mjs +26 -6
  29. package/dist/astro/image-endpoint.mjs.map +1 -1
  30. package/dist/astro/index.d.mts +14 -14
  31. package/dist/astro/index.d.mts.map +1 -1
  32. package/dist/astro/index.mjs +253 -17
  33. package/dist/astro/index.mjs.map +1 -1
  34. package/dist/astro/middleware/auth.d.mts +12 -12
  35. package/dist/astro/middleware/auth.d.mts.map +1 -1
  36. package/dist/astro/middleware/auth.mjs +18 -13
  37. package/dist/astro/middleware/auth.mjs.map +1 -1
  38. package/dist/astro/middleware/media-usage-write-fence.mjs +6 -6
  39. package/dist/astro/middleware/redirect.d.mts.map +1 -1
  40. package/dist/astro/middleware/redirect.mjs +34 -32
  41. package/dist/astro/middleware/redirect.mjs.map +1 -1
  42. package/dist/astro/middleware/request-context.d.mts.map +1 -1
  43. package/dist/astro/middleware/request-context.mjs +99 -60
  44. package/dist/astro/middleware/request-context.mjs.map +1 -1
  45. package/dist/astro/middleware/setup.mjs +1 -1
  46. package/dist/astro/middleware.d.mts +12 -12
  47. package/dist/astro/middleware.d.mts.map +1 -1
  48. package/dist/astro/middleware.mjs +233 -128
  49. package/dist/astro/middleware.mjs.map +1 -1
  50. package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +15 -15
  51. package/dist/astro/routes/api/admin/allowed-domains/index.mjs +15 -15
  52. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +8 -7
  53. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs.map +1 -1
  54. package/dist/astro/routes/api/admin/api-tokens/index.mjs +9 -8
  55. package/dist/astro/routes/api/admin/api-tokens/index.mjs.map +1 -1
  56. package/dist/astro/routes/api/admin/byline-fields/_slug_/usage.mjs +7 -7
  57. package/dist/astro/routes/api/admin/byline-fields/_slug_.mjs +17 -17
  58. package/dist/astro/routes/api/admin/byline-fields/index.mjs +17 -17
  59. package/dist/astro/routes/api/admin/byline-fields/reorder.mjs +17 -17
  60. package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +22 -22
  61. package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs +22 -23
  62. package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs.map +1 -1
  63. package/dist/astro/routes/api/admin/bylines/index.mjs +23 -23
  64. package/dist/astro/routes/api/admin/bylines/index.mjs.map +1 -1
  65. package/dist/astro/routes/api/admin/comments/_id_/status.mjs +19 -19
  66. package/dist/astro/routes/api/admin/comments/_id_.mjs +8 -8
  67. package/dist/astro/routes/api/admin/comments/bulk.mjs +18 -18
  68. package/dist/astro/routes/api/admin/comments/counts.mjs +8 -8
  69. package/dist/astro/routes/api/admin/comments/index.mjs +18 -18
  70. package/dist/astro/routes/api/admin/core-update.mjs +8 -8
  71. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +7 -7
  72. package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +6 -6
  73. package/dist/astro/routes/api/admin/media-usage/activation.mjs +21 -21
  74. package/dist/astro/routes/api/admin/media-usage/collection-deletions/index.mjs +22 -22
  75. package/dist/astro/routes/api/admin/media-usage/collection-deletions/retry.mjs +22 -22
  76. package/dist/astro/routes/api/admin/media-usage/progress.mjs +23 -23
  77. package/dist/astro/routes/api/admin/media-usage/repair.mjs +29 -29
  78. package/dist/astro/routes/api/admin/media-usage/work/index.mjs +22 -22
  79. package/dist/astro/routes/api/admin/media-usage/work/retry.mjs +22 -22
  80. package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +7 -7
  81. package/dist/astro/routes/api/admin/oauth-clients/index.mjs +7 -7
  82. package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +9 -9
  83. package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +9 -9
  84. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +73 -72
  85. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs.map +1 -1
  86. package/dist/astro/routes/api/admin/plugins/_id_/mcp.mjs +8 -8
  87. package/dist/astro/routes/api/admin/plugins/_id_/settings.mjs +71 -70
  88. package/dist/astro/routes/api/admin/plugins/_id_/settings.mjs.map +1 -1
  89. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +72 -71
  90. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs.map +1 -1
  91. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +82 -81
  92. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs.map +1 -1
  93. package/dist/astro/routes/api/admin/plugins/index.mjs +72 -71
  94. package/dist/astro/routes/api/admin/plugins/index.mjs.map +1 -1
  95. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +8 -8
  96. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +71 -70
  97. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs.map +1 -1
  98. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +81 -80
  99. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs.map +1 -1
  100. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +71 -70
  101. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs.map +1 -1
  102. package/dist/astro/routes/api/admin/plugins/registry/_id_/uninstall.mjs +72 -71
  103. package/dist/astro/routes/api/admin/plugins/registry/_id_/uninstall.mjs.map +1 -1
  104. package/dist/astro/routes/api/admin/plugins/registry/_id_/update.mjs +83 -82
  105. package/dist/astro/routes/api/admin/plugins/registry/_id_/update.mjs.map +1 -1
  106. package/dist/astro/routes/api/admin/plugins/registry/artifact.mjs +10 -10
  107. package/dist/astro/routes/api/admin/plugins/registry/install.mjs +74 -73
  108. package/dist/astro/routes/api/admin/plugins/registry/install.mjs.map +1 -1
  109. package/dist/astro/routes/api/admin/plugins/registry/publisher-handle.mjs +8 -8
  110. package/dist/astro/routes/api/admin/plugins/registry/verify.mjs +72 -71
  111. package/dist/astro/routes/api/admin/plugins/registry/verify.mjs.map +1 -1
  112. package/dist/astro/routes/api/admin/plugins/updates.mjs +71 -70
  113. package/dist/astro/routes/api/admin/plugins/updates.mjs.map +1 -1
  114. package/dist/astro/routes/api/admin/scheduled-policy-rejections/_collection_/_id_.mjs +6 -6
  115. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +71 -70
  116. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs.map +1 -1
  117. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +8 -8
  118. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +71 -70
  119. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs.map +1 -1
  120. package/dist/astro/routes/api/admin/transfer/_...path_.mjs +5 -5
  121. package/dist/astro/routes/api/admin/transfer/approvals/_id_/approve.mjs +39 -39
  122. package/dist/astro/routes/api/admin/transfer/approvals/_id_/deny.mjs +39 -39
  123. package/dist/astro/routes/api/admin/transfer/approvals/index.mjs +41 -41
  124. package/dist/astro/routes/api/admin/transfer/capabilities.mjs +41 -41
  125. package/dist/astro/routes/api/admin/transfer/exports/_id_/advance.mjs +41 -41
  126. package/dist/astro/routes/api/admin/transfer/exports/_id_/archive.mjs +42 -42
  127. package/dist/astro/routes/api/admin/transfer/exports/_id_/files/_...path_.mjs +42 -42
  128. package/dist/astro/routes/api/admin/transfer/exports/_id_/index.mjs +41 -41
  129. package/dist/astro/routes/api/admin/transfer/exports/_id_/manifest.mjs +42 -42
  130. package/dist/astro/routes/api/admin/transfer/exports/index.mjs +43 -43
  131. package/dist/astro/routes/api/admin/transfer/imports/_id_/abandon.mjs +41 -41
  132. package/dist/astro/routes/api/admin/transfer/imports/_id_/advance.mjs +41 -41
  133. package/dist/astro/routes/api/admin/transfer/imports/_id_/analyze.mjs +43 -43
  134. package/dist/astro/routes/api/admin/transfer/imports/_id_/cancel.mjs +41 -41
  135. package/dist/astro/routes/api/admin/transfer/imports/_id_/execute.mjs +43 -43
  136. package/dist/astro/routes/api/admin/transfer/imports/_id_/files/_...path_.mjs +41 -41
  137. package/dist/astro/routes/api/admin/transfer/imports/_id_/index.mjs +41 -41
  138. package/dist/astro/routes/api/admin/transfer/imports/_id_/missing.mjs +43 -43
  139. package/dist/astro/routes/api/admin/transfer/imports/_id_/plan.mjs +41 -41
  140. package/dist/astro/routes/api/admin/transfer/imports/_id_/receipt.mjs +41 -41
  141. package/dist/astro/routes/api/admin/transfer/imports/index.mjs +43 -43
  142. package/dist/astro/routes/api/admin/users/_id_/disable.mjs +5 -5
  143. package/dist/astro/routes/api/admin/users/_id_/enable.mjs +5 -5
  144. package/dist/astro/routes/api/admin/users/_id_/index.mjs +15 -15
  145. package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +7 -7
  146. package/dist/astro/routes/api/admin/users/index.mjs +15 -15
  147. package/dist/astro/routes/api/auth/dev-bypass.mjs +7 -7
  148. package/dist/astro/routes/api/auth/handover.d.mts +8 -0
  149. package/dist/astro/routes/api/auth/handover.d.mts.map +1 -0
  150. package/dist/astro/routes/api/auth/handover.mjs +49 -0
  151. package/dist/astro/routes/api/auth/handover.mjs.map +1 -0
  152. package/dist/astro/routes/api/auth/invite/accept.mjs +5 -5
  153. package/dist/astro/routes/api/auth/invite/complete.mjs +20 -20
  154. package/dist/astro/routes/api/auth/invite/index.mjs +17 -17
  155. package/dist/astro/routes/api/auth/invite/register-options.mjs +18 -18
  156. package/dist/astro/routes/api/auth/logout.mjs +6 -6
  157. package/dist/astro/routes/api/auth/magic-link/send.mjs +20 -19
  158. package/dist/astro/routes/api/auth/magic-link/send.mjs.map +1 -1
  159. package/dist/astro/routes/api/auth/magic-link/verify.d.mts.map +1 -1
  160. package/dist/astro/routes/api/auth/magic-link/verify.mjs +24 -18
  161. package/dist/astro/routes/api/auth/magic-link/verify.mjs.map +1 -1
  162. package/dist/astro/routes/api/auth/me.mjs +16 -16
  163. package/dist/astro/routes/api/auth/mode.mjs +6 -6
  164. package/dist/astro/routes/api/auth/oauth/_provider_/callback.d.mts.map +1 -1
  165. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +36 -13
  166. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs.map +1 -1
  167. package/dist/astro/routes/api/auth/oauth/_provider_.d.mts.map +1 -1
  168. package/dist/astro/routes/api/auth/oauth/_provider_.mjs +20 -5
  169. package/dist/astro/routes/api/auth/oauth/_provider_.mjs.map +1 -1
  170. package/dist/astro/routes/api/auth/passkey/_id_.mjs +15 -15
  171. package/dist/astro/routes/api/auth/passkey/index.mjs +5 -5
  172. package/dist/astro/routes/api/auth/passkey/options.d.mts.map +1 -1
  173. package/dist/astro/routes/api/auth/passkey/options.mjs +28 -21
  174. package/dist/astro/routes/api/auth/passkey/options.mjs.map +1 -1
  175. package/dist/astro/routes/api/auth/passkey/register/options.mjs +18 -18
  176. package/dist/astro/routes/api/auth/passkey/register/verify.mjs +19 -19
  177. package/dist/astro/routes/api/auth/passkey/verify.mjs +20 -20
  178. package/dist/astro/routes/api/auth/signup/complete.mjs +20 -20
  179. package/dist/astro/routes/api/auth/signup/request.mjs +19 -18
  180. package/dist/astro/routes/api/auth/signup/request.mjs.map +1 -1
  181. package/dist/astro/routes/api/auth/signup/verify.mjs +5 -5
  182. package/dist/astro/routes/api/calendar.d.mts +8 -0
  183. package/dist/astro/routes/api/calendar.d.mts.map +1 -0
  184. package/dist/astro/routes/api/calendar.mjs +204 -0
  185. package/dist/astro/routes/api/calendar.mjs.map +1 -0
  186. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +14 -14
  187. package/dist/astro/routes/api/comments/_collection_/_contentId_/reactions.mjs +20 -20
  188. package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +6 -6
  189. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +17 -17
  190. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +6 -6
  191. package/dist/astro/routes/api/content/_collection_/_id_/lock.mjs +17 -17
  192. package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +6 -6
  193. package/dist/astro/routes/api/content/_collection_/_id_/plugin-extensions/_pluginId_/_kind_/_extensionId_.mjs +12 -12
  194. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +31 -31
  195. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +17 -17
  196. package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/children.mjs +35 -35
  197. package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/parents.mjs +35 -35
  198. package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +6 -6
  199. package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +6 -6
  200. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +17 -17
  201. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +25 -25
  202. package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +6 -6
  203. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +17 -17
  204. package/dist/astro/routes/api/content/_collection_/_id_.mjs +17 -17
  205. package/dist/astro/routes/api/content/_collection_/authors.mjs +6 -6
  206. package/dist/astro/routes/api/content/_collection_/index.mjs +16 -16
  207. package/dist/astro/routes/api/content/_collection_/trash.mjs +16 -16
  208. package/dist/astro/routes/api/dashboard.mjs +12 -12
  209. package/dist/astro/routes/api/dev/emails.mjs +6 -6
  210. package/dist/astro/routes/api/health.mjs +7 -7
  211. package/dist/astro/routes/api/import/probe.d.mts +3 -3
  212. package/dist/astro/routes/api/import/probe.mjs +25 -25
  213. package/dist/astro/routes/api/import/wordpress/analyze.mjs +6 -6
  214. package/dist/astro/routes/api/import/wordpress/execute.d.mts +13 -13
  215. package/dist/astro/routes/api/import/wordpress/execute.mjs +31 -24
  216. package/dist/astro/routes/api/import/wordpress/execute.mjs.map +1 -1
  217. package/dist/astro/routes/api/import/wordpress/media.d.mts +12 -12
  218. package/dist/astro/routes/api/import/wordpress/media.mjs +20 -20
  219. package/dist/astro/routes/api/import/wordpress/prepare.mjs +18 -18
  220. package/dist/astro/routes/api/import/wordpress/rewrite-url-helpers.d.mts +8 -0
  221. package/dist/astro/routes/api/import/wordpress/rewrite-url-helpers.d.mts.map +1 -1
  222. package/dist/astro/routes/api/import/wordpress/rewrite-url-helpers.mjs +67 -31
  223. package/dist/astro/routes/api/import/wordpress/rewrite-url-helpers.mjs.map +1 -1
  224. package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +13 -13
  225. package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +27 -27
  226. package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +1 -1
  227. package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +25 -25
  228. package/dist/astro/routes/api/import/wordpress-plugin/callback.mjs +1 -1
  229. package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +13 -13
  230. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +40 -33
  231. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs.map +1 -1
  232. package/dist/astro/routes/api/manifest.mjs +10 -7
  233. package/dist/astro/routes/api/manifest.mjs.map +1 -1
  234. package/dist/astro/routes/api/mcp.mjs +94 -94
  235. package/dist/astro/routes/api/mcp.mjs.map +1 -1
  236. package/dist/astro/routes/api/media/_id_/confirm.d.mts.map +1 -1
  237. package/dist/astro/routes/api/media/_id_/confirm.mjs +36 -20
  238. package/dist/astro/routes/api/media/_id_/confirm.mjs.map +1 -1
  239. package/dist/astro/routes/api/media/_id_/replace.mjs +17 -17
  240. package/dist/astro/routes/api/media/_id_/upload.mjs +10 -10
  241. package/dist/astro/routes/api/media/_id_/usage.mjs +31 -31
  242. package/dist/astro/routes/api/media/_id_.mjs +29 -29
  243. package/dist/astro/routes/api/media/asset/_id_/_filename_.mjs +7 -7
  244. package/dist/astro/routes/api/media/file/_...key_.d.mts.map +1 -1
  245. package/dist/astro/routes/api/media/file/_...key_.mjs +46 -16
  246. package/dist/astro/routes/api/media/file/_...key_.mjs.map +1 -1
  247. package/dist/astro/routes/api/media/folders/_id_.mjs +17 -17
  248. package/dist/astro/routes/api/media/folders/index.mjs +17 -17
  249. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +6 -6
  250. package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +6 -6
  251. package/dist/astro/routes/api/media/providers/index.mjs +6 -6
  252. package/dist/astro/routes/api/media/upload-url.mjs +45 -25
  253. package/dist/astro/routes/api/media/upload-url.mjs.map +1 -1
  254. package/dist/astro/routes/api/media.d.mts.map +1 -1
  255. package/dist/astro/routes/api/media.mjs +47 -36
  256. package/dist/astro/routes/api/media.mjs.map +1 -1
  257. package/dist/astro/routes/api/menus/_name_/items/_id_.mjs +18 -18
  258. package/dist/astro/routes/api/menus/_name_/items.mjs +18 -18
  259. package/dist/astro/routes/api/menus/_name_/reorder.mjs +18 -18
  260. package/dist/astro/routes/api/menus/_name_/translations.mjs +18 -18
  261. package/dist/astro/routes/api/menus/_name_.mjs +18 -18
  262. package/dist/astro/routes/api/menus/index.mjs +18 -18
  263. package/dist/astro/routes/api/oauth/authorize.mjs +6 -6
  264. package/dist/astro/routes/api/oauth/device/authorize.mjs +9 -9
  265. package/dist/astro/routes/api/oauth/device/code.mjs +13 -12
  266. package/dist/astro/routes/api/oauth/device/code.mjs.map +1 -1
  267. package/dist/astro/routes/api/oauth/device/token.mjs +12 -11
  268. package/dist/astro/routes/api/oauth/device/token.mjs.map +1 -1
  269. package/dist/astro/routes/api/oauth/register.mjs +9 -8
  270. package/dist/astro/routes/api/oauth/register.mjs.map +1 -1
  271. package/dist/astro/routes/api/oauth/token/refresh.mjs +9 -9
  272. package/dist/astro/routes/api/oauth/token/revoke.mjs +9 -9
  273. package/dist/astro/routes/api/oauth/token.mjs +9 -9
  274. package/dist/astro/routes/api/openapi.json.mjs +23 -23
  275. package/dist/astro/routes/api/openapi.json.mjs.map +1 -1
  276. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +12 -12
  277. package/dist/astro/routes/api/redirects/404s/index.mjs +20 -19
  278. package/dist/astro/routes/api/redirects/404s/index.mjs.map +1 -1
  279. package/dist/astro/routes/api/redirects/404s/summary.mjs +20 -19
  280. package/dist/astro/routes/api/redirects/404s/summary.mjs.map +1 -1
  281. package/dist/astro/routes/api/redirects/_id_.mjs +20 -19
  282. package/dist/astro/routes/api/redirects/_id_.mjs.map +1 -1
  283. package/dist/astro/routes/api/redirects/index.mjs +20 -19
  284. package/dist/astro/routes/api/redirects/index.mjs.map +1 -1
  285. package/dist/astro/routes/api/relations/_id_/index.mjs +35 -35
  286. package/dist/astro/routes/api/relations/index.mjs +35 -35
  287. package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +6 -6
  288. package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +17 -17
  289. package/dist/astro/routes/api/schema/block-types/_slug_/index.mjs +71 -70
  290. package/dist/astro/routes/api/schema/block-types/_slug_/index.mjs.map +1 -1
  291. package/dist/astro/routes/api/schema/block-types/_slug_/versions/_version_/activate.mjs +71 -70
  292. package/dist/astro/routes/api/schema/block-types/_slug_/versions/_version_/activate.mjs.map +1 -1
  293. package/dist/astro/routes/api/schema/block-types/index.mjs +71 -70
  294. package/dist/astro/routes/api/schema/block-types/index.mjs.map +1 -1
  295. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +71 -70
  296. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs.map +1 -1
  297. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +71 -70
  298. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs.map +1 -1
  299. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +71 -70
  300. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs.map +1 -1
  301. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +71 -70
  302. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs.map +1 -1
  303. package/dist/astro/routes/api/schema/collections/index.mjs +71 -70
  304. package/dist/astro/routes/api/schema/collections/index.mjs.map +1 -1
  305. package/dist/astro/routes/api/schema/collections/reorder.mjs +71 -70
  306. package/dist/astro/routes/api/schema/collections/reorder.mjs.map +1 -1
  307. package/dist/astro/routes/api/schema/index.mjs +17 -17
  308. package/dist/astro/routes/api/schema/index.mjs.map +1 -1
  309. package/dist/astro/routes/api/schema/orphans/_slug_.mjs +71 -70
  310. package/dist/astro/routes/api/schema/orphans/_slug_.mjs.map +1 -1
  311. package/dist/astro/routes/api/schema/orphans/index.mjs +71 -70
  312. package/dist/astro/routes/api/schema/orphans/index.mjs.map +1 -1
  313. package/dist/astro/routes/api/search/enable.mjs +19 -19
  314. package/dist/astro/routes/api/search/index.mjs +18 -18
  315. package/dist/astro/routes/api/search/rebuild.mjs +19 -19
  316. package/dist/astro/routes/api/search/stats.mjs +9 -9
  317. package/dist/astro/routes/api/search/suggest.mjs +18 -18
  318. package/dist/astro/routes/api/sections/_slug_.mjs +18 -18
  319. package/dist/astro/routes/api/sections/index.mjs +18 -18
  320. package/dist/astro/routes/api/settings/backups/archives/_name_.mjs +8 -8
  321. package/dist/astro/routes/api/settings/backups/archives/index.mjs +8 -8
  322. package/dist/astro/routes/api/settings/backups/export.mjs +8 -8
  323. package/dist/astro/routes/api/settings/backups/index.mjs +9 -9
  324. package/dist/astro/routes/api/settings/domain-notify.d.mts +8 -0
  325. package/dist/astro/routes/api/settings/domain-notify.d.mts.map +1 -0
  326. package/dist/astro/routes/api/settings/domain-notify.mjs +125 -0
  327. package/dist/astro/routes/api/settings/domain-notify.mjs.map +1 -0
  328. package/dist/astro/routes/api/settings/domain.d.mts +9 -0
  329. package/dist/astro/routes/api/settings/domain.d.mts.map +1 -0
  330. package/dist/astro/routes/api/settings/domain.mjs +61 -0
  331. package/dist/astro/routes/api/settings/domain.mjs.map +1 -0
  332. package/dist/astro/routes/api/settings/email.mjs +7 -7
  333. package/dist/astro/routes/api/settings.mjs +22 -22
  334. package/dist/astro/routes/api/setup/admin-verify.mjs +21 -21
  335. package/dist/astro/routes/api/setup/admin.mjs +19 -19
  336. package/dist/astro/routes/api/setup/dev-bypass.mjs +43 -43
  337. package/dist/astro/routes/api/setup/dev-reset.mjs +5 -5
  338. package/dist/astro/routes/api/setup/index.d.mts.map +1 -1
  339. package/dist/astro/routes/api/setup/index.mjs +59 -50
  340. package/dist/astro/routes/api/setup/index.mjs.map +1 -1
  341. package/dist/astro/routes/api/setup/status.mjs +7 -7
  342. package/dist/astro/routes/api/site/domain-proof.d.mts +8 -0
  343. package/dist/astro/routes/api/site/domain-proof.d.mts.map +1 -0
  344. package/dist/astro/routes/api/site/domain-proof.mjs +33 -0
  345. package/dist/astro/routes/api/site/domain-proof.mjs.map +1 -0
  346. package/dist/astro/routes/api/snapshot.mjs +10 -10
  347. package/dist/astro/routes/api/taxonomies/_name_/reorder.mjs +23 -23
  348. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs +23 -23
  349. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +23 -23
  350. package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +23 -23
  351. package/dist/astro/routes/api/taxonomies/_name_/translations.mjs +22 -22
  352. package/dist/astro/routes/api/taxonomies/_name_.mjs +23 -23
  353. package/dist/astro/routes/api/taxonomies/bulk-tag.mjs +36 -36
  354. package/dist/astro/routes/api/taxonomies/index.mjs +23 -23
  355. package/dist/astro/routes/api/themes/preview.mjs +8 -8
  356. package/dist/astro/routes/api/typegen.mjs +7 -7
  357. package/dist/astro/routes/api/visual-editing/action-token.mjs +8 -8
  358. package/dist/astro/routes/api/visual-editing/content/_collection_/_id_/publish.mjs +20 -20
  359. package/dist/astro/routes/api/visual-editing/toolbar-labels.mjs +5 -5
  360. package/dist/astro/routes/api/well-known/auth.mjs +1 -1
  361. package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +2 -2
  362. package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +2 -2
  363. package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +17 -17
  364. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +19 -19
  365. package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +19 -19
  366. package/dist/astro/routes/api/widget-areas/_name_.mjs +9 -9
  367. package/dist/astro/routes/api/widget-areas/index.mjs +19 -19
  368. package/dist/astro/routes/api/widget-components.mjs +6 -6
  369. package/dist/astro/routes/robots.txt.mjs +7 -7
  370. package/dist/astro/routes/sitemap-_collection_.xml.d.mts.map +1 -1
  371. package/dist/astro/routes/sitemap-_collection_.xml.mjs +30 -13
  372. package/dist/astro/routes/sitemap-_collection_.xml.mjs.map +1 -1
  373. package/dist/astro/routes/sitemap.xml.d.mts.map +1 -1
  374. package/dist/astro/routes/sitemap.xml.mjs +14 -13
  375. package/dist/astro/routes/sitemap.xml.mjs.map +1 -1
  376. package/dist/astro/types.d.mts +30 -18
  377. package/dist/astro/types.d.mts.map +1 -1
  378. package/dist/audit-CCH3MA4Y.mjs +127 -0
  379. package/dist/audit-CCH3MA4Y.mjs.map +1 -0
  380. package/dist/auth/providers/github.d.mts +1 -1
  381. package/dist/auth/providers/google.d.mts +1 -1
  382. package/dist/auth/providers/microsoft.d.mts +27 -0
  383. package/dist/auth/providers/microsoft.d.mts.map +1 -0
  384. package/dist/auth/providers/microsoft.mjs +20 -0
  385. package/dist/auth/providers/microsoft.mjs.map +1 -0
  386. package/dist/authoritative-records-Dcs7l2H5.mjs +5183 -0
  387. package/dist/authoritative-records-Dcs7l2H5.mjs.map +1 -0
  388. package/dist/authorize-TdIGpRSE.mjs +49 -0
  389. package/dist/authorize-TdIGpRSE.mjs.map +1 -0
  390. package/dist/backup-CZt5Mzwx.mjs +246 -0
  391. package/dist/backup-CZt5Mzwx.mjs.map +1 -0
  392. package/dist/base64-BQBZwXCx.mjs +63 -0
  393. package/dist/base64-BQBZwXCx.mjs.map +1 -0
  394. package/dist/block-types-DHnkzE6u.mjs +132 -0
  395. package/dist/block-types-DHnkzE6u.mjs.map +1 -0
  396. package/dist/block-values-C4N_F2-G.mjs +175 -0
  397. package/dist/block-values-C4N_F2-G.mjs.map +1 -0
  398. package/dist/byline-BmVKOQ8l.mjs +909 -0
  399. package/dist/byline-BmVKOQ8l.mjs.map +1 -0
  400. package/dist/byline-fields-B8SDs3M_.mjs +123 -0
  401. package/dist/byline-fields-B8SDs3M_.mjs.map +1 -0
  402. package/dist/byline-fields-Bze3ZdAw.mjs +280 -0
  403. package/dist/byline-fields-Bze3ZdAw.mjs.map +1 -0
  404. package/dist/bylines-CHhR28r9.mjs +150 -0
  405. package/dist/bylines-CHhR28r9.mjs.map +1 -0
  406. package/dist/bylines-DZS4OflA.mjs +234 -0
  407. package/dist/bylines-DZS4OflA.mjs.map +1 -0
  408. package/dist/cache-x0z8t_m9.mjs +133 -0
  409. package/dist/cache-x0z8t_m9.mjs.map +1 -0
  410. package/dist/canonical-BUcKRYpG.mjs +174 -0
  411. package/dist/canonical-BUcKRYpG.mjs.map +1 -0
  412. package/dist/capture-triggers-C9JKoIdT.mjs +362 -0
  413. package/dist/capture-triggers-C9JKoIdT.mjs.map +1 -0
  414. package/dist/challenge-store-BHgdPVze.mjs +51 -0
  415. package/dist/challenge-store-BHgdPVze.mjs.map +1 -0
  416. package/dist/checksum-BYR5i7qe.mjs +162 -0
  417. package/dist/checksum-BYR5i7qe.mjs.map +1 -0
  418. package/dist/chrome-tags-BIKBMZYO.mjs +24 -0
  419. package/dist/chrome-tags-BIKBMZYO.mjs.map +1 -0
  420. package/dist/chunks-Dr5Vr0zA.mjs +25 -0
  421. package/dist/chunks-Dr5Vr0zA.mjs.map +1 -0
  422. package/dist/cli/index.mjs +54 -52
  423. package/dist/cli/index.mjs.map +1 -1
  424. package/dist/client/cf-access.d.mts +1 -1
  425. package/dist/client/index.d.mts +34 -34
  426. package/dist/client/index.d.mts.map +1 -1
  427. package/dist/client/index.mjs +2 -2
  428. package/dist/client/index.mjs.map +1 -1
  429. package/dist/collection-slugs-cache-B2Gs9Jwx.mjs +85 -0
  430. package/dist/collection-slugs-cache-B2Gs9Jwx.mjs.map +1 -0
  431. package/dist/comment-CWla6OHV.mjs +325 -0
  432. package/dist/comment-CWla6OHV.mjs.map +1 -0
  433. package/dist/comment-reaction-RZrcs5cW.mjs +85 -0
  434. package/dist/comment-reaction-RZrcs5cW.mjs.map +1 -0
  435. package/dist/comments-BzmIKVb2.mjs +99 -0
  436. package/dist/comments-BzmIKVb2.mjs.map +1 -0
  437. package/dist/comments-Da_dI2O1.mjs +195 -0
  438. package/dist/comments-Da_dI2O1.mjs.map +1 -0
  439. package/dist/components-oFXumpf5.mjs +112 -0
  440. package/dist/components-oFXumpf5.mjs.map +1 -0
  441. package/dist/config--wamYxBW.d.mts +39 -0
  442. package/dist/config--wamYxBW.d.mts.map +1 -0
  443. package/dist/config-Bo4eOOdV.mjs +228 -0
  444. package/dist/config-Bo4eOOdV.mjs.map +1 -0
  445. package/dist/config-C4-UxIk7.d.mts +6790 -0
  446. package/dist/config-C4-UxIk7.d.mts.map +1 -0
  447. package/dist/connection-UpzYxtE2.mjs +36 -0
  448. package/dist/connection-UpzYxtE2.mjs.map +1 -0
  449. package/dist/content-CcHrqkgp.mjs +2072 -0
  450. package/dist/content-CcHrqkgp.mjs.map +1 -0
  451. package/dist/content-list-query-Bxxdd9fv.d.mts +26 -0
  452. package/dist/content-list-query-Bxxdd9fv.d.mts.map +1 -0
  453. package/dist/content-repair-havk1F0-.mjs +442 -0
  454. package/dist/content-repair-havk1F0-.mjs.map +1 -0
  455. package/dist/context-CvhgHgSH.mjs +2043 -0
  456. package/dist/context-CvhgHgSH.mjs.map +1 -0
  457. package/dist/credits-CygUrPOi.mjs +110 -0
  458. package/dist/credits-CygUrPOi.mjs.map +1 -0
  459. package/dist/cron-C6ytTOLw.mjs +306 -0
  460. package/dist/cron-C6ytTOLw.mjs.map +1 -0
  461. package/dist/dashboard-7_FYfafc.mjs +151 -0
  462. package/dist/dashboard-7_FYfafc.mjs.map +1 -0
  463. package/dist/db/index.d.mts +3 -3
  464. package/dist/db/index.mjs +1 -1
  465. package/dist/db/index.mjs.map +1 -1
  466. package/dist/db/libsql-migrations.d.mts +1 -1
  467. package/dist/db/libsql-migrations.mjs +5 -5
  468. package/dist/db/libsql.d.mts +1 -1
  469. package/dist/db/postgres-migrations.d.mts +1 -1
  470. package/dist/db/postgres-migrations.mjs +4 -4
  471. package/dist/db/postgres.d.mts +1 -1
  472. package/dist/db/sqlite-migrations.d.mts +1 -1
  473. package/dist/db/sqlite-migrations.mjs +4 -4
  474. package/dist/db/sqlite.d.mts +1 -1
  475. package/dist/db/sqlite.mjs +1 -1
  476. package/dist/default-CHCUkV4Z.mjs +81 -0
  477. package/dist/default-CHCUkV4Z.mjs.map +1 -0
  478. package/dist/deferred-tasks-G0xhcJTl.d.mts +9 -0
  479. package/dist/deferred-tasks-G0xhcJTl.d.mts.map +1 -0
  480. package/dist/dev-typegen-Dtl8AfS6.mjs +29 -0
  481. package/dist/dev-typegen-Dtl8AfS6.mjs.map +1 -0
  482. package/dist/device-flow-CzDJmQ1q.mjs +521 -0
  483. package/dist/device-flow-CzDJmQ1q.mjs.map +1 -0
  484. package/dist/digest-xJmyPv2r.mjs +194 -0
  485. package/dist/digest-xJmyPv2r.mjs.map +1 -0
  486. package/dist/direct-executor-BXiYIVJ9.mjs +104 -0
  487. package/dist/direct-executor-BXiYIVJ9.mjs.map +1 -0
  488. package/dist/email-console-7ZPApLlm.mjs +50 -0
  489. package/dist/email-console-7ZPApLlm.mjs.map +1 -0
  490. package/dist/email-locale-DFdUA6UF.mjs +25 -0
  491. package/dist/email-locale-DFdUA6UF.mjs.map +1 -0
  492. package/dist/emdash-runtime-C4oFeVpN.mjs +4363 -0
  493. package/dist/emdash-runtime-C4oFeVpN.mjs.map +1 -0
  494. package/dist/enrich-Duu4sV3a.mjs +194 -0
  495. package/dist/enrich-Duu4sV3a.mjs.map +1 -0
  496. package/dist/entry-lock-B4n0HdQ_.mjs +163 -0
  497. package/dist/entry-lock-B4n0HdQ_.mjs.map +1 -0
  498. package/dist/entry-lock-BAAlKYrz.d.mts +4566 -0
  499. package/dist/entry-lock-BAAlKYrz.d.mts.map +1 -0
  500. package/dist/entry-lock-Cjz0h45X.mjs +1209 -0
  501. package/dist/entry-lock-Cjz0h45X.mjs.map +1 -0
  502. package/dist/env-types-4bkF6Bqg.mjs +38 -0
  503. package/dist/env-types-4bkF6Bqg.mjs.map +1 -0
  504. package/dist/error-DxgQdaZ_.mjs +90 -0
  505. package/dist/error-DxgQdaZ_.mjs.map +1 -0
  506. package/dist/errors-CjtE5aWF.mjs +120 -0
  507. package/dist/errors-CjtE5aWF.mjs.map +1 -0
  508. package/dist/errors-hskQ0C8G.mjs +479 -0
  509. package/dist/errors-hskQ0C8G.mjs.map +1 -0
  510. package/dist/escape-ESFhYzwG.mjs +9 -0
  511. package/dist/escape-ESFhYzwG.mjs.map +1 -0
  512. package/dist/fence-vc3aHgRA.mjs +162 -0
  513. package/dist/fence-vc3aHgRA.mjs.map +1 -0
  514. package/dist/field-defs-cache-zoow36nz.mjs +77 -0
  515. package/dist/field-defs-cache-zoow36nz.mjs.map +1 -0
  516. package/dist/field-map-JD1wG0Tq.mjs +83 -0
  517. package/dist/field-map-JD1wG0Tq.mjs.map +1 -0
  518. package/dist/fts-manager-WJCN8uU6.mjs +443 -0
  519. package/dist/fts-manager-WJCN8uU6.mjs.map +1 -0
  520. package/dist/gc-CsGZiKdH.mjs +75 -0
  521. package/dist/gc-CsGZiKdH.mjs.map +1 -0
  522. package/dist/hash-C4DFoJ7Z.mjs +37 -0
  523. package/dist/hash-C4DFoJ7Z.mjs.map +1 -0
  524. package/dist/hook-result-CXjtMk7Q.d.mts +31 -0
  525. package/dist/hook-result-CXjtMk7Q.d.mts.map +1 -0
  526. package/dist/hreflang-BAma7iRr.mjs +105 -0
  527. package/dist/hreflang-BAma7iRr.mjs.map +1 -0
  528. package/dist/hreflang-BsYo4x_M.d.mts +50 -0
  529. package/dist/hreflang-BsYo4x_M.d.mts.map +1 -0
  530. package/dist/http-route-dispatch-C8G7hAK6.mjs +342 -0
  531. package/dist/http-route-dispatch-C8G7hAK6.mjs.map +1 -0
  532. package/dist/identity-BwBKM1fH.mjs +35 -0
  533. package/dist/identity-BwBKM1fH.mjs.map +1 -0
  534. package/dist/import-DJ3Z2wxE.mjs +2021 -0
  535. package/dist/import-DJ3Z2wxE.mjs.map +1 -0
  536. package/dist/index-DYsn97dY.d.mts +623 -0
  537. package/dist/index-DYsn97dY.d.mts.map +1 -0
  538. package/dist/index.d.mts +24 -24
  539. package/dist/index.mjs +99 -98
  540. package/dist/init-lock-BGmew3r1.mjs +56 -0
  541. package/dist/init-lock-BGmew3r1.mjs.map +1 -0
  542. package/dist/install-finalization-DCFnFSHv.mjs +58 -0
  543. package/dist/install-finalization-DCFnFSHv.mjs.map +1 -0
  544. package/dist/keys-CGvAndSp.mjs +61 -0
  545. package/dist/keys-CGvAndSp.mjs.map +1 -0
  546. package/dist/kinds-DT1W4T4Y.mjs +974 -0
  547. package/dist/kinds-DT1W4T4Y.mjs.map +1 -0
  548. package/dist/lifecycle-BzglCSY0.mjs +25 -0
  549. package/dist/lifecycle-BzglCSY0.mjs.map +1 -0
  550. package/dist/load-DjUqmf3s.mjs +28 -0
  551. package/dist/load-DjUqmf3s.mjs.map +1 -0
  552. package/dist/loader-CetY659y.mjs +1355 -0
  553. package/dist/loader-CetY659y.mjs.map +1 -0
  554. package/dist/loops-DkT1zkPH.mjs +205 -0
  555. package/dist/loops-DkT1zkPH.mjs.map +1 -0
  556. package/dist/manifest-builder-BOFCd9rX.mjs +189 -0
  557. package/dist/manifest-builder-BOFCd9rX.mjs.map +1 -0
  558. package/dist/manifest-schema-BiFBPEsp.mjs +497 -0
  559. package/dist/manifest-schema-BiFBPEsp.mjs.map +1 -0
  560. package/dist/marketplace-CUlenvZm.mjs +257 -0
  561. package/dist/marketplace-CUlenvZm.mjs.map +1 -0
  562. package/dist/media/image-endpoint.d.mts +26 -2
  563. package/dist/media/image-endpoint.d.mts.map +1 -1
  564. package/dist/media/image-endpoint.mjs +73 -3
  565. package/dist/media/image-endpoint.mjs.map +1 -1
  566. package/dist/media/index.d.mts +1 -1
  567. package/dist/media/index.mjs +1 -1
  568. package/dist/media/local-runtime.d.mts +14 -14
  569. package/dist/media/local-runtime.mjs +7 -7
  570. package/dist/media-CRKsKlfK.mjs +416 -0
  571. package/dist/media-CRKsKlfK.mjs.map +1 -0
  572. package/dist/media-C_z7sRuC.mjs +294 -0
  573. package/dist/media-C_z7sRuC.mjs.map +1 -0
  574. package/dist/media-IT8hQleU.mjs +373 -0
  575. package/dist/media-IT8hQleU.mjs.map +1 -0
  576. package/dist/media-allowlist-Ct6wvnT2.mjs +45 -0
  577. package/dist/media-allowlist-Ct6wvnT2.mjs.map +1 -0
  578. package/dist/media-folders-DtMt-vAA.mjs +210 -0
  579. package/dist/media-folders-DtMt-vAA.mjs.map +1 -0
  580. package/dist/media-url-BpXLqCmf.mjs +43 -0
  581. package/dist/media-url-BpXLqCmf.mjs.map +1 -0
  582. package/dist/media-usage-DEPHZZ9X.mjs +282 -0
  583. package/dist/media-usage-DEPHZZ9X.mjs.map +1 -0
  584. package/dist/media-usage-activation-V2Siabtw.mjs +78 -0
  585. package/dist/media-usage-activation-V2Siabtw.mjs.map +1 -0
  586. package/dist/media-usage-work-Cv1OE59F.mjs +151 -0
  587. package/dist/media-usage-work-Cv1OE59F.mjs.map +1 -0
  588. package/dist/media-usage-work-cgDYGvrt.mjs +1015 -0
  589. package/dist/media-usage-work-cgDYGvrt.mjs.map +1 -0
  590. package/dist/menus-CvVYfsuk.mjs +753 -0
  591. package/dist/menus-CvVYfsuk.mjs.map +1 -0
  592. package/dist/menus-D1HC8npj.mjs +92 -0
  593. package/dist/menus-D1HC8npj.mjs.map +1 -0
  594. package/dist/menus-DL8IPIcm.mjs +3721 -0
  595. package/dist/menus-DL8IPIcm.mjs.map +1 -0
  596. package/dist/migrations/index.d.mts +1 -1
  597. package/dist/migrations/index.mjs +3 -3
  598. package/dist/mime-B5M9R53H.mjs +81 -0
  599. package/dist/mime-B5M9R53H.mjs.map +1 -0
  600. package/dist/mode-eieqAWLe.mjs +23 -0
  601. package/dist/mode-eieqAWLe.mjs.map +1 -0
  602. package/dist/node-sqlite-compat-VuyzJw1b.mjs +63 -0
  603. package/dist/node-sqlite-compat-VuyzJw1b.mjs.map +1 -0
  604. package/dist/oauth-authorization-B6ZJbMd2.mjs +274 -0
  605. package/dist/oauth-authorization-B6ZJbMd2.mjs.map +1 -0
  606. package/dist/oauth-clients-DVjRc9v3.mjs +266 -0
  607. package/dist/oauth-clients-DVjRc9v3.mjs.map +1 -0
  608. package/dist/oauth-state-store-CnmYYsVQ.mjs +50 -0
  609. package/dist/oauth-state-store-CnmYYsVQ.mjs.map +1 -0
  610. package/dist/oauth-user-lookup-Dz1_R5vT.mjs +26 -0
  611. package/dist/oauth-user-lookup-Dz1_R5vT.mjs.map +1 -0
  612. package/dist/object-cache/memory.d.mts +1 -1
  613. package/dist/options-BR9XZl7h.d.mts +81 -0
  614. package/dist/options-BR9XZl7h.d.mts.map +1 -0
  615. package/dist/ownership-COPyVysP.mjs +12 -0
  616. package/dist/ownership-COPyVysP.mjs.map +1 -0
  617. package/dist/page/index.d.mts +2 -2
  618. package/dist/page/index.mjs +6 -6
  619. package/dist/parse-BOGhrwSq.d.mts +174 -0
  620. package/dist/parse-BOGhrwSq.d.mts.map +1 -0
  621. package/dist/parse-Cn5aSk1N.mjs +81 -0
  622. package/dist/parse-Cn5aSk1N.mjs.map +1 -0
  623. package/dist/passkey-config-mMFRQUCj.mjs +46 -0
  624. package/dist/passkey-config-mMFRQUCj.mjs.map +1 -0
  625. package/dist/paths-BmcAdBo9.mjs +77 -0
  626. package/dist/paths-BmcAdBo9.mjs.map +1 -0
  627. package/dist/patterns-CMNnYCgf.mjs +159 -0
  628. package/dist/patterns-CMNnYCgf.mjs.map +1 -0
  629. package/dist/placeholder-nOep3_Gn.d.mts +306 -0
  630. package/dist/placeholder-nOep3_Gn.d.mts.map +1 -0
  631. package/dist/plan-CDY4K8CH.mjs +135 -0
  632. package/dist/plan-CDY4K8CH.mjs.map +1 -0
  633. package/dist/plugin-test-runtime.d.mts +14 -14
  634. package/dist/plugin-test-runtime.d.mts.map +1 -1
  635. package/dist/plugin-test-runtime.mjs +111 -110
  636. package/dist/plugin-types.d.mts +2 -2
  637. package/dist/plugin-utils.d.mts +12 -12
  638. package/dist/plugin-utils.mjs +1 -1
  639. package/dist/plugin-utils.mjs.map +1 -1
  640. package/dist/plugins/adapt-sandbox-entry.d.mts +12 -12
  641. package/dist/plugins/adapt-sandbox-entry.mjs +3 -3
  642. package/dist/plugins/host.d.mts +5 -5
  643. package/dist/plugins/host.mjs +45 -44
  644. package/dist/plugins-DFBpfbO3.mjs +261 -0
  645. package/dist/plugins-DFBpfbO3.mjs.map +1 -0
  646. package/dist/policy-B_2qnHSy.mjs +45 -0
  647. package/dist/policy-B_2qnHSy.mjs.map +1 -0
  648. package/dist/portable-text-Dc2YAusw.mjs +307 -0
  649. package/dist/portable-text-Dc2YAusw.mjs.map +1 -0
  650. package/dist/preview-BtzikJ9O.mjs +107 -0
  651. package/dist/preview-BtzikJ9O.mjs.map +1 -0
  652. package/dist/protocol-M268ox8L.d.mts +61 -0
  653. package/dist/protocol-M268ox8L.d.mts.map +1 -0
  654. package/dist/public-submission-BQZavgZU.mjs +251 -0
  655. package/dist/public-submission-BQZavgZU.mjs.map +1 -0
  656. package/dist/public-url-uT1Ok2Tu.mjs +101 -0
  657. package/dist/public-url-uT1Ok2Tu.mjs.map +1 -0
  658. package/dist/query-BGG3sDEd.mjs +1127 -0
  659. package/dist/query-BGG3sDEd.mjs.map +1 -0
  660. package/dist/query-C_CWlifp.mjs +41 -0
  661. package/dist/query-C_CWlifp.mjs.map +1 -0
  662. package/dist/range-CXK_kDbI.mjs +51 -0
  663. package/dist/range-CXK_kDbI.mjs.map +1 -0
  664. package/dist/rate-limit-Dvamvay-.mjs +127 -0
  665. package/dist/rate-limit-Dvamvay-.mjs.map +1 -0
  666. package/dist/receipt-BmQGzquP.mjs +43 -0
  667. package/dist/receipt-BmQGzquP.mjs.map +1 -0
  668. package/dist/redirect-B39kTQ_0.mjs +423 -0
  669. package/dist/redirect-B39kTQ_0.mjs.map +1 -0
  670. package/dist/redirect-BguJ00Pv.mjs +19 -0
  671. package/dist/redirect-BguJ00Pv.mjs.map +1 -0
  672. package/dist/redirects-C8G4BsfP.mjs +446 -0
  673. package/dist/redirects-C8G4BsfP.mjs.map +1 -0
  674. package/dist/redirects-DFT7Wr-e.mjs +148 -0
  675. package/dist/redirects-DFT7Wr-e.mjs.map +1 -0
  676. package/dist/registry/testing.mjs +3 -3
  677. package/dist/registry-DeZ27gVi.mjs +8374 -0
  678. package/dist/registry-DeZ27gVi.mjs.map +1 -0
  679. package/dist/relations-DBB1bRJW.mjs +776 -0
  680. package/dist/relations-DBB1bRJW.mjs.map +1 -0
  681. package/dist/request-context.d.mts +2 -2
  682. package/dist/request-context.mjs.map +1 -1
  683. package/dist/request-meta-BSvkhIBX.mjs +141 -0
  684. package/dist/request-meta-BSvkhIBX.mjs.map +1 -0
  685. package/dist/resolve-BxH64HN9.mjs +100 -0
  686. package/dist/resolve-BxH64HN9.mjs.map +1 -0
  687. package/dist/revision-BWEH2qQB.mjs +368 -0
  688. package/dist/revision-BWEH2qQB.mjs.map +1 -0
  689. package/dist/route-wire-CwbWB_6O.mjs +197 -0
  690. package/dist/route-wire-CwbWB_6O.mjs.map +1 -0
  691. package/dist/routes-BfIxc7ft.mjs +272 -0
  692. package/dist/routes-BfIxc7ft.mjs.map +1 -0
  693. package/dist/runner-DkeafPBA.d.mts +68 -0
  694. package/dist/runner-DkeafPBA.d.mts.map +1 -0
  695. package/dist/runner-wqt4BrIW.mjs +6383 -0
  696. package/dist/runner-wqt4BrIW.mjs.map +1 -0
  697. package/dist/runtime.d.mts +13 -13
  698. package/dist/runtime.mjs +3 -3
  699. package/dist/schema/project-env-types.mjs +38 -38
  700. package/dist/schema-BXIW-JHi.mjs +815 -0
  701. package/dist/schema-BXIW-JHi.mjs.map +1 -0
  702. package/dist/schema-I74JwYte.mjs +13 -0
  703. package/dist/schema-I74JwYte.mjs.map +1 -0
  704. package/dist/scopes-RWZ5ft_Z.mjs +34 -0
  705. package/dist/scopes-RWZ5ft_Z.mjs.map +1 -0
  706. package/dist/search-DxwagyWS.mjs +450 -0
  707. package/dist/search-DxwagyWS.mjs.map +1 -0
  708. package/dist/secrets-Cc_O3Kp-.mjs +369 -0
  709. package/dist/secrets-Cc_O3Kp-.mjs.map +1 -0
  710. package/dist/sections-Ccq9ZgyD.mjs +346 -0
  711. package/dist/sections-Ccq9ZgyD.mjs.map +1 -0
  712. package/dist/seed/index.d.mts +2 -2
  713. package/dist/seed/index.mjs +36 -36
  714. package/dist/seo/index.d.mts +3 -3
  715. package/dist/seo/index.mjs +23 -23
  716. package/dist/seo-CCnfPWAQ.mjs +133 -0
  717. package/dist/seo-CCnfPWAQ.mjs.map +1 -0
  718. package/dist/seo-QCtJ1jjV.mjs +188 -0
  719. package/dist/seo-QCtJ1jjV.mjs.map +1 -0
  720. package/dist/service-DX84s2rw.mjs +150 -0
  721. package/dist/service-DX84s2rw.mjs.map +1 -0
  722. package/dist/session-user-1dtJc2zv.mjs +61 -0
  723. package/dist/session-user-1dtJc2zv.mjs.map +1 -0
  724. package/dist/settings-B1jOxAIl.mjs +443 -0
  725. package/dist/settings-B1jOxAIl.mjs.map +1 -0
  726. package/dist/settings-Bc1IBl1t.mjs +66 -0
  727. package/dist/settings-Bc1IBl1t.mjs.map +1 -0
  728. package/dist/settings-GaZ5sVgg.mjs +73 -0
  729. package/dist/settings-GaZ5sVgg.mjs.map +1 -0
  730. package/dist/setup-complete-DidMAWJS.mjs +65 -0
  731. package/dist/setup-complete-DidMAWJS.mjs.map +1 -0
  732. package/dist/setup-nonce-DKl4S4c6.mjs +25 -0
  733. package/dist/setup-nonce-DKl4S4c6.mjs.map +1 -0
  734. package/dist/single-flight-cache-D0EaGbN1.mjs +104 -0
  735. package/dist/single-flight-cache-D0EaGbN1.mjs.map +1 -0
  736. package/dist/site-domain-CbI51Pc2.mjs +113 -0
  737. package/dist/site-domain-CbI51Pc2.mjs.map +1 -0
  738. package/dist/site-settings-CDdT4mVm.mjs +50 -0
  739. package/dist/site-settings-CDdT4mVm.mjs.map +1 -0
  740. package/dist/site-url-CrDZaAvo.mjs +45 -0
  741. package/dist/site-url-CrDZaAvo.mjs.map +1 -0
  742. package/dist/sitemap-name-W3BTor6X.mjs +26 -0
  743. package/dist/sitemap-name-W3BTor6X.mjs.map +1 -0
  744. package/dist/slug-BJhHKoOH.mjs +16 -0
  745. package/dist/slug-BJhHKoOH.mjs.map +1 -0
  746. package/dist/slugify-bu2-jKia.mjs +22 -0
  747. package/dist/slugify-bu2-jKia.mjs.map +1 -0
  748. package/dist/snapshot-BuI_2uDe.mjs +414 -0
  749. package/dist/snapshot-BuI_2uDe.mjs.map +1 -0
  750. package/dist/ssrf-LM_0wpGA.mjs +406 -0
  751. package/dist/ssrf-LM_0wpGA.mjs.map +1 -0
  752. package/dist/stage-DhzZuYaT.mjs +662 -0
  753. package/dist/stage-DhzZuYaT.mjs.map +1 -0
  754. package/dist/staged-DboEaWsV.mjs +686 -0
  755. package/dist/staged-DboEaWsV.mjs.map +1 -0
  756. package/dist/state-DCXDzjHq.mjs +178 -0
  757. package/dist/state-DCXDzjHq.mjs.map +1 -0
  758. package/dist/status-Dl85BK39.mjs +30 -0
  759. package/dist/status-Dl85BK39.mjs.map +1 -0
  760. package/dist/storage/local.d.mts +2 -2
  761. package/dist/storage/local.d.mts.map +1 -1
  762. package/dist/storage/local.mjs +12 -5
  763. package/dist/storage/local.mjs.map +1 -1
  764. package/dist/storage/s3.d.mts +4 -2
  765. package/dist/storage/s3.d.mts.map +1 -1
  766. package/dist/storage/s3.mjs +56 -9
  767. package/dist/storage/s3.mjs.map +1 -1
  768. package/dist/storage-query-BOBmeDMD.d.mts +1615 -0
  769. package/dist/storage-query-BOBmeDMD.d.mts.map +1 -0
  770. package/dist/tar-K40edFMt.mjs +449 -0
  771. package/dist/tar-K40edFMt.mjs.map +1 -0
  772. package/dist/target-BOighEY1.mjs +27 -0
  773. package/dist/target-BOighEY1.mjs.map +1 -0
  774. package/dist/taxonomies-DQSywBvX.mjs +697 -0
  775. package/dist/taxonomies-DQSywBvX.mjs.map +1 -0
  776. package/dist/taxonomies-Dj5eaobC.mjs +939 -0
  777. package/dist/taxonomies-Dj5eaobC.mjs.map +1 -0
  778. package/dist/taxonomy-QrNmTfIZ.mjs +550 -0
  779. package/dist/taxonomy-QrNmTfIZ.mjs.map +1 -0
  780. package/dist/tokens-j5L0as2H.mjs +171 -0
  781. package/dist/tokens-j5L0as2H.mjs.map +1 -0
  782. package/dist/transfer-CYEw8Tu4.mjs +8873 -0
  783. package/dist/transfer-CYEw8Tu4.mjs.map +1 -0
  784. package/dist/transfer-DDX10hkD.mjs +166 -0
  785. package/dist/transfer-DDX10hkD.mjs.map +1 -0
  786. package/dist/transfer-download-BAqq6GJv.mjs +33 -0
  787. package/dist/transfer-download-BAqq6GJv.mjs.map +1 -0
  788. package/dist/transformations-De44wqV_.mjs +196 -0
  789. package/dist/transformations-De44wqV_.mjs.map +1 -0
  790. package/dist/transport-1QjUhCRO.d.mts +42 -0
  791. package/dist/transport-1QjUhCRO.d.mts.map +1 -0
  792. package/dist/transport-Ds5pVX7p.mjs +136 -0
  793. package/dist/transport-Ds5pVX7p.mjs.map +1 -0
  794. package/dist/trusted-proxy-d4Tk6biT.mjs +51 -0
  795. package/dist/trusted-proxy-d4Tk6biT.mjs.map +1 -0
  796. package/dist/turnstile-DaFLtyrs.mjs +58 -0
  797. package/dist/turnstile-DaFLtyrs.mjs.map +1 -0
  798. package/dist/types-B4-1P2DK.d.mts +227 -0
  799. package/dist/types-B4-1P2DK.d.mts.map +1 -0
  800. package/dist/types-BKXA0f-c.mjs +16 -0
  801. package/dist/types-BKXA0f-c.mjs.map +1 -0
  802. package/dist/types-BiHcpUoO.d.mts +374 -0
  803. package/dist/types-BiHcpUoO.d.mts.map +1 -0
  804. package/dist/types-BihhvkyN.d.mts +85 -0
  805. package/dist/types-BihhvkyN.d.mts.map +1 -0
  806. package/dist/types-Bq9Wohd7.d.mts +363 -0
  807. package/dist/types-Bq9Wohd7.d.mts.map +1 -0
  808. package/dist/types-C-Xp0CcN.mjs +103 -0
  809. package/dist/types-C-Xp0CcN.mjs.map +1 -0
  810. package/dist/types-C4P7F1Vq.d.mts +1741 -0
  811. package/dist/types-C4P7F1Vq.d.mts.map +1 -0
  812. package/dist/types-CGaqwHw4.mjs +37 -0
  813. package/dist/types-CGaqwHw4.mjs.map +1 -0
  814. package/dist/types-Cj0_yZkn.mjs +18 -0
  815. package/dist/types-Cj0_yZkn.mjs.map +1 -0
  816. package/dist/types-D4ECCE4X.mjs +77 -0
  817. package/dist/types-D4ECCE4X.mjs.map +1 -0
  818. package/dist/types-DcRJp0vS.d.mts +125 -0
  819. package/dist/types-DcRJp0vS.d.mts.map +1 -0
  820. package/dist/types-Ff85fTzU.d.mts +289 -0
  821. package/dist/types-Ff85fTzU.d.mts.map +1 -0
  822. package/dist/types-UKr5Sf4y.d.mts +916 -0
  823. package/dist/types-UKr5Sf4y.d.mts.map +1 -0
  824. package/dist/types-YpN8hZW7.d.mts +204 -0
  825. package/dist/types-YpN8hZW7.d.mts.map +1 -0
  826. package/dist/update-check-DrlsK-tt.mjs +161 -0
  827. package/dist/update-check-DrlsK-tt.mjs.map +1 -0
  828. package/dist/upload-attempts-D8CPPvRU.mjs +32 -0
  829. package/dist/upload-attempts-D8CPPvRU.mjs.map +1 -0
  830. package/dist/url-pattern-Di4Nn3vP.mjs +41 -0
  831. package/dist/url-pattern-Di4Nn3vP.mjs.map +1 -0
  832. package/dist/user-B-ZdGjhI.mjs +171 -0
  833. package/dist/user-B-ZdGjhI.mjs.map +1 -0
  834. package/dist/utils-D7wL3r6-.mjs +437 -0
  835. package/dist/utils-D7wL3r6-.mjs.map +1 -0
  836. package/dist/validate-BSZbSUDk.mjs +524 -0
  837. package/dist/validate-BSZbSUDk.mjs.map +1 -0
  838. package/dist/validate-Dfv0DpZi.d.mts +468 -0
  839. package/dist/validate-Dfv0DpZi.d.mts.map +1 -0
  840. package/dist/validation-DRyC_Vm5.mjs +219 -0
  841. package/dist/validation-DRyC_Vm5.mjs.map +1 -0
  842. package/dist/version-C4kz0PcO.mjs +7 -0
  843. package/dist/version-C4kz0PcO.mjs.map +1 -0
  844. package/dist/version-jhs2BRtl.mjs +9 -0
  845. package/dist/version-jhs2BRtl.mjs.map +1 -0
  846. package/dist/video-DReZ48Un.mjs +54 -0
  847. package/dist/video-DReZ48Un.mjs.map +1 -0
  848. package/dist/virtual-modules-D0e6VbEv.mjs +516 -0
  849. package/dist/virtual-modules-D0e6VbEv.mjs.map +1 -0
  850. package/dist/widgets-BkcMzKct.mjs +121 -0
  851. package/dist/widgets-BkcMzKct.mjs.map +1 -0
  852. package/dist/wxr-taxonomies-BxI0CbTg.mjs +453 -0
  853. package/dist/wxr-taxonomies-BxI0CbTg.mjs.map +1 -0
  854. package/dist/wxr-taxonomies-Dad33GJi.d.mts +34 -0
  855. package/dist/wxr-taxonomies-Dad33GJi.d.mts.map +1 -0
  856. package/dist/zod-generator-BQilAboC.mjs +424 -0
  857. package/dist/zod-generator-BQilAboC.mjs.map +1 -0
  858. package/package.json +19 -10
  859. package/src/api/errors.ts +12 -0
  860. package/src/api/handlers/api-tokens.ts +12 -6
  861. package/src/api/handlers/bylines.ts +24 -3
  862. package/src/api/handlers/calendar.ts +246 -0
  863. package/src/api/handlers/content.ts +69 -13
  864. package/src/api/handlers/domain-move-notice.ts +94 -0
  865. package/src/api/handlers/index.ts +2 -0
  866. package/src/api/handlers/manifest.ts +5 -0
  867. package/src/api/handlers/media-allowlist.ts +1 -0
  868. package/src/api/handlers/media-upload.ts +13 -10
  869. package/src/api/handlers/media-usage.ts +2 -1
  870. package/src/api/handlers/media.ts +1 -0
  871. package/src/api/handlers/plugins.ts +21 -29
  872. package/src/api/handlers/redirects.ts +6 -6
  873. package/src/api/handlers/seo.ts +155 -59
  874. package/src/api/handlers/settings.ts +31 -1
  875. package/src/api/handlers/site-domain.ts +143 -0
  876. package/src/api/openapi/document.ts +2 -2
  877. package/src/api/public-url.ts +1 -1
  878. package/src/api/schemas/bylines.ts +3 -1
  879. package/src/api/schemas/content.ts +36 -0
  880. package/src/api/schemas/media-usage.ts +7 -1
  881. package/src/api/schemas/media.ts +12 -0
  882. package/src/api/site-url.ts +53 -5
  883. package/src/api/types.ts +2 -0
  884. package/src/astro/image-endpoint.ts +46 -4
  885. package/src/astro/integration/admin-locales.ts +168 -0
  886. package/src/astro/integration/dev-env.ts +84 -0
  887. package/src/astro/integration/index.ts +67 -10
  888. package/src/astro/integration/routes.ts +25 -0
  889. package/src/astro/integration/runtime.ts +15 -0
  890. package/src/astro/integration/vite-config.ts +29 -1
  891. package/src/astro/middleware/auth.ts +16 -3
  892. package/src/astro/middleware/csp.ts +2 -0
  893. package/src/astro/middleware/redirect.ts +47 -21
  894. package/src/astro/middleware/request-context.ts +64 -31
  895. package/src/astro/middleware.ts +150 -26
  896. package/src/astro/prefetch.ts +10 -3
  897. package/src/astro/routes/api/admin/bylines/[id]/translations.ts +0 -5
  898. package/src/astro/routes/api/admin/bylines/index.ts +1 -1
  899. package/src/astro/routes/api/admin/plugins/[id]/index.ts +1 -0
  900. package/src/astro/routes/api/auth/handover.ts +58 -0
  901. package/src/astro/routes/api/auth/magic-link/verify.ts +11 -3
  902. package/src/astro/routes/api/auth/oauth/[provider]/callback.ts +56 -4
  903. package/src/astro/routes/api/auth/oauth/[provider].ts +37 -4
  904. package/src/astro/routes/api/auth/passkey/options.ts +10 -2
  905. package/src/astro/routes/api/calendar.ts +35 -0
  906. package/src/astro/routes/api/import/wordpress/execute.ts +19 -0
  907. package/src/astro/routes/api/import/wordpress/rewrite-url-helpers.ts +80 -42
  908. package/src/astro/routes/api/import/wordpress-plugin/execute.ts +15 -0
  909. package/src/astro/routes/api/manifest.ts +10 -0
  910. package/src/astro/routes/api/media/[id]/confirm.ts +19 -0
  911. package/src/astro/routes/api/media/file/[...key].ts +60 -12
  912. package/src/astro/routes/api/media/upload-url.ts +35 -7
  913. package/src/astro/routes/api/media.ts +24 -5
  914. package/src/astro/routes/api/schema/index.ts +1 -1
  915. package/src/astro/routes/api/settings/domain-notify.ts +76 -0
  916. package/src/astro/routes/api/settings/domain.ts +63 -0
  917. package/src/astro/routes/api/setup/index.ts +21 -2
  918. package/src/astro/routes/api/site/domain-proof.ts +28 -0
  919. package/src/astro/routes/sitemap-[collection].xml.ts +31 -8
  920. package/src/astro/routes/sitemap.xml.ts +12 -10
  921. package/src/astro/types.ts +13 -1
  922. package/src/auth/providers/microsoft-admin.tsx +31 -0
  923. package/src/auth/providers/microsoft.ts +47 -0
  924. package/src/auth/rate-limit.ts +18 -13
  925. package/src/auth/types.ts +7 -0
  926. package/src/aws-sdk.d.ts +2 -1
  927. package/src/cleanup.ts +26 -0
  928. package/src/cli/commands/export-seed.ts +2 -0
  929. package/src/cli/commands/seed.ts +5 -4
  930. package/src/client/index.ts +6 -1
  931. package/src/comments/public-submission.ts +15 -8
  932. package/src/comments/turnstile.ts +6 -1
  933. package/src/components/CommentForm.astro +48 -8
  934. package/src/components/Comments.astro +50 -28
  935. package/src/components/EmDashImage.astro +6 -4
  936. package/src/components/Gallery.astro +4 -3
  937. package/src/components/HtmlBlock.astro +17 -6
  938. package/src/components/HtmlBlockFrame.astro +63 -0
  939. package/src/components/Iframe.astro +141 -0
  940. package/src/components/Image.astro +4 -3
  941. package/src/components/InlinePortableTextEditor.tsx +156 -33
  942. package/src/components/Video.astro +100 -0
  943. package/src/components/WebMcpSearch.astro +80 -0
  944. package/src/components/index.ts +8 -2
  945. package/src/components/inline-code-block.tsx +8 -0
  946. package/src/components/webmcp-search.ts +138 -0
  947. package/src/components/widgets/RecentPosts.astro +57 -17
  948. package/src/config/secrets.ts +27 -15
  949. package/src/content/converters/mark-safety.ts +3 -3
  950. package/src/content/converters/portable-text-identity.ts +2 -0
  951. package/src/content/converters/portable-text-to-prosemirror.ts +43 -2
  952. package/src/content/converters/prosemirror-to-portable-text.ts +44 -2
  953. package/src/content/converters/types.ts +46 -0
  954. package/src/content/converters/video.ts +77 -0
  955. package/src/database/content-datetime.ts +11 -4
  956. package/src/database/datetime-storage.ts +1 -1
  957. package/src/database/migrations/090_redirect_enable_loop_guard.ts +70 -0
  958. package/src/database/migrations/091_redirect_artifacts.ts +141 -0
  959. package/src/database/migrations/runner.ts +17 -1
  960. package/src/database/repositories/comment.ts +17 -3
  961. package/src/database/repositories/content.ts +103 -29
  962. package/src/database/repositories/plugin-storage.ts +28 -19
  963. package/src/database/repositories/redirect.ts +30 -3
  964. package/src/database/repositories/taxonomy.ts +61 -46
  965. package/src/database/repositories/types.ts +2 -0
  966. package/src/database/request-scoped.ts +34 -0
  967. package/src/database/types.ts +23 -0
  968. package/src/db/adapters.ts +2 -0
  969. package/src/emdash-runtime.ts +245 -71
  970. package/src/import/menus.ts +3 -0
  971. package/src/import/sources/wordpress-plugin.ts +3 -2
  972. package/src/import/utils.ts +2 -3
  973. package/src/index.ts +4 -0
  974. package/src/loader.ts +360 -98
  975. package/src/mcp/server.ts +12 -4
  976. package/src/media/image-endpoint.ts +101 -1
  977. package/src/media/mime.ts +21 -0
  978. package/src/media/responsive.ts +14 -7
  979. package/src/media/usage/extractor.ts +19 -2
  980. package/src/media/usage/types.ts +5 -1
  981. package/src/menus/index.ts +30 -26
  982. package/src/plugin-utils.ts +1 -1
  983. package/src/plugins/context.ts +3 -7
  984. package/src/plugins/hooks.ts +11 -1
  985. package/src/plugins/http-route-dispatch.ts +5 -1
  986. package/src/plugins/manager.ts +12 -2
  987. package/src/plugins/manifest-schema.ts +1 -0
  988. package/src/plugins/route-error.ts +14 -0
  989. package/src/plugins/routes.ts +2 -2
  990. package/src/plugins/state.ts +36 -0
  991. package/src/plugins/types.ts +22 -0
  992. package/src/query.ts +20 -29
  993. package/src/redirects/artifacts.ts +460 -0
  994. package/src/redirects/cache.ts +76 -41
  995. package/src/redirects/patterns.ts +26 -2
  996. package/src/request-context.ts +1 -1
  997. package/src/schema/registry.ts +7 -4
  998. package/src/schema/slug.ts +19 -0
  999. package/src/search/text-extraction.ts +6 -1
  1000. package/src/seed/apply.ts +65 -57
  1001. package/src/seed/validate.ts +31 -0
  1002. package/src/seo/sitemap-name.ts +22 -0
  1003. package/src/settings/index.ts +17 -12
  1004. package/src/storage/index.ts +2 -0
  1005. package/src/storage/local.ts +10 -2
  1006. package/src/storage/range.ts +54 -0
  1007. package/src/storage/s3.ts +52 -8
  1008. package/src/storage/types.ts +30 -3
  1009. package/src/transfer/format/columns.ts +3 -0
  1010. package/src/transfer/import/rebuild.ts +17 -2
  1011. package/src/transfer/import/scaffold.ts +16 -9
  1012. package/src/ui.ts +2 -0
  1013. package/src/utils/sanitize.ts +14 -9
  1014. package/src/utils/slugify.ts +6 -1
  1015. package/src/virtual-modules.d.ts +3 -0
  1016. package/src/visual-editing/toolbar.ts +80 -35
  1017. package/src/widgets/components.ts +4 -0
  1018. package/src/widgets/index.ts +74 -82
  1019. package/src/widgets/recent-posts.ts +62 -0
  1020. package/dist/action-token-D2KE1Rqf.mjs +0 -26
  1021. package/dist/action-token-D2KE1Rqf.mjs.map +0 -1
  1022. package/dist/activation-DDuqAat2.mjs +0 -387
  1023. package/dist/activation-DDuqAat2.mjs.map +0 -1
  1024. package/dist/adapters-Ds-1Pmkm.d.mts +0 -171
  1025. package/dist/adapters-Ds-1Pmkm.d.mts.map +0 -1
  1026. package/dist/allowed-origins-D78QvbTO.mjs +0 -116
  1027. package/dist/allowed-origins-D78QvbTO.mjs.map +0 -1
  1028. package/dist/api-BBZlif0y.mjs +0 -4974
  1029. package/dist/api-BBZlif0y.mjs.map +0 -1
  1030. package/dist/api-tokens-BGbfWZVO.mjs +0 -166
  1031. package/dist/api-tokens-BGbfWZVO.mjs.map +0 -1
  1032. package/dist/apply-CDNV4JJ-.mjs +0 -1672
  1033. package/dist/apply-CDNV4JJ-.mjs.map +0 -1
  1034. package/dist/approvals-CVvJSEBF.mjs +0 -460
  1035. package/dist/approvals-CVvJSEBF.mjs.map +0 -1
  1036. package/dist/artifact-fetch-CGK0DQLj.mjs +0 -659
  1037. package/dist/artifact-fetch-CGK0DQLj.mjs.map +0 -1
  1038. package/dist/audit-BszbE_BP.mjs +0 -127
  1039. package/dist/audit-BszbE_BP.mjs.map +0 -1
  1040. package/dist/authoritative-records-ChM8dTeV.mjs +0 -5172
  1041. package/dist/authoritative-records-ChM8dTeV.mjs.map +0 -1
  1042. package/dist/authorize-CTGywswM.mjs +0 -49
  1043. package/dist/authorize-CTGywswM.mjs.map +0 -1
  1044. package/dist/backup-CDrPP8fI.mjs +0 -246
  1045. package/dist/backup-CDrPP8fI.mjs.map +0 -1
  1046. package/dist/base64-DvnNgP7e.mjs +0 -63
  1047. package/dist/base64-DvnNgP7e.mjs.map +0 -1
  1048. package/dist/block-types-nNEaPkvx.mjs +0 -132
  1049. package/dist/block-types-nNEaPkvx.mjs.map +0 -1
  1050. package/dist/block-values-Bho1nsZF.mjs +0 -175
  1051. package/dist/block-values-Bho1nsZF.mjs.map +0 -1
  1052. package/dist/byline-02tu_Uc-.mjs +0 -909
  1053. package/dist/byline-02tu_Uc-.mjs.map +0 -1
  1054. package/dist/byline-fields-BYbTptTU.mjs +0 -280
  1055. package/dist/byline-fields-BYbTptTU.mjs.map +0 -1
  1056. package/dist/byline-fields-BjQH-1z9.mjs +0 -123
  1057. package/dist/byline-fields-BjQH-1z9.mjs.map +0 -1
  1058. package/dist/bylines-VytjeHBI.mjs +0 -214
  1059. package/dist/bylines-VytjeHBI.mjs.map +0 -1
  1060. package/dist/bylines-gyWBWUUc.mjs +0 -150
  1061. package/dist/bylines-gyWBWUUc.mjs.map +0 -1
  1062. package/dist/cache-CPanL9IO.mjs +0 -114
  1063. package/dist/cache-CPanL9IO.mjs.map +0 -1
  1064. package/dist/canonical-CAecl1UQ.mjs +0 -174
  1065. package/dist/canonical-CAecl1UQ.mjs.map +0 -1
  1066. package/dist/capture-triggers-CdZfvHtF.mjs +0 -362
  1067. package/dist/capture-triggers-CdZfvHtF.mjs.map +0 -1
  1068. package/dist/challenge-store-VePApay4.mjs +0 -51
  1069. package/dist/challenge-store-VePApay4.mjs.map +0 -1
  1070. package/dist/checksum-BSIhEAYW.mjs +0 -162
  1071. package/dist/checksum-BSIhEAYW.mjs.map +0 -1
  1072. package/dist/chrome-tags-CKELm-bo.mjs +0 -24
  1073. package/dist/chrome-tags-CKELm-bo.mjs.map +0 -1
  1074. package/dist/chunks-DBmkKmBH.mjs +0 -25
  1075. package/dist/chunks-DBmkKmBH.mjs.map +0 -1
  1076. package/dist/collection-slugs-cache-BNRAPNiu.mjs +0 -85
  1077. package/dist/collection-slugs-cache-BNRAPNiu.mjs.map +0 -1
  1078. package/dist/comment-Cq1UYN8_.mjs +0 -313
  1079. package/dist/comment-Cq1UYN8_.mjs.map +0 -1
  1080. package/dist/comment-reaction-B5sZzSoA.mjs +0 -85
  1081. package/dist/comment-reaction-B5sZzSoA.mjs.map +0 -1
  1082. package/dist/comments-B3F-ETyh.mjs +0 -195
  1083. package/dist/comments-B3F-ETyh.mjs.map +0 -1
  1084. package/dist/comments-zrTgWBSg.mjs +0 -99
  1085. package/dist/comments-zrTgWBSg.mjs.map +0 -1
  1086. package/dist/components-Dbf4Eq16.mjs +0 -108
  1087. package/dist/components-Dbf4Eq16.mjs.map +0 -1
  1088. package/dist/config-BCM5sQP7.d.mts +0 -6688
  1089. package/dist/config-BCM5sQP7.d.mts.map +0 -1
  1090. package/dist/config-CXPcy2iY.mjs +0 -228
  1091. package/dist/config-CXPcy2iY.mjs.map +0 -1
  1092. package/dist/config-CZkZBuBK.d.mts +0 -39
  1093. package/dist/config-CZkZBuBK.d.mts.map +0 -1
  1094. package/dist/connection-C5GIciX9.mjs +0 -36
  1095. package/dist/connection-C5GIciX9.mjs.map +0 -1
  1096. package/dist/content-RzEXY3QX.mjs +0 -2020
  1097. package/dist/content-RzEXY3QX.mjs.map +0 -1
  1098. package/dist/content-list-query-B6P37Ug_.d.mts +0 -26
  1099. package/dist/content-list-query-B6P37Ug_.d.mts.map +0 -1
  1100. package/dist/content-repair-BDVsYXWK.mjs +0 -442
  1101. package/dist/content-repair-BDVsYXWK.mjs.map +0 -1
  1102. package/dist/context-BpTIzY5h.mjs +0 -2026
  1103. package/dist/context-BpTIzY5h.mjs.map +0 -1
  1104. package/dist/credits-JOE92Gr7.mjs +0 -110
  1105. package/dist/credits-JOE92Gr7.mjs.map +0 -1
  1106. package/dist/cron-ktyapbdB.mjs +0 -306
  1107. package/dist/cron-ktyapbdB.mjs.map +0 -1
  1108. package/dist/dashboard-BoV4pwPP.mjs +0 -151
  1109. package/dist/dashboard-BoV4pwPP.mjs.map +0 -1
  1110. package/dist/default-B7KnYwtQ.mjs +0 -81
  1111. package/dist/default-B7KnYwtQ.mjs.map +0 -1
  1112. package/dist/deferred-tasks-eaUIqXj8.d.mts +0 -9
  1113. package/dist/deferred-tasks-eaUIqXj8.d.mts.map +0 -1
  1114. package/dist/dev-typegen-8JlYYFno.mjs +0 -29
  1115. package/dist/dev-typegen-8JlYYFno.mjs.map +0 -1
  1116. package/dist/device-flow-BlV_z24g.mjs +0 -521
  1117. package/dist/device-flow-BlV_z24g.mjs.map +0 -1
  1118. package/dist/digest-DiYAoZpf.mjs +0 -194
  1119. package/dist/digest-DiYAoZpf.mjs.map +0 -1
  1120. package/dist/direct-executor-Db8xA3zg.mjs +0 -104
  1121. package/dist/direct-executor-Db8xA3zg.mjs.map +0 -1
  1122. package/dist/email-console-Dm78wSmg.mjs +0 -50
  1123. package/dist/email-console-Dm78wSmg.mjs.map +0 -1
  1124. package/dist/email-locale-B4X9LXe9.mjs +0 -25
  1125. package/dist/email-locale-B4X9LXe9.mjs.map +0 -1
  1126. package/dist/emdash-runtime-BakQ6io7.mjs +0 -4239
  1127. package/dist/emdash-runtime-BakQ6io7.mjs.map +0 -1
  1128. package/dist/enrich-BDdVNeDK.mjs +0 -194
  1129. package/dist/enrich-BDdVNeDK.mjs.map +0 -1
  1130. package/dist/entry-lock-DY8B-xcr.d.mts +0 -4544
  1131. package/dist/entry-lock-DY8B-xcr.d.mts.map +0 -1
  1132. package/dist/entry-lock-DrUAdTzf.mjs +0 -163
  1133. package/dist/entry-lock-DrUAdTzf.mjs.map +0 -1
  1134. package/dist/entry-lock-yIkBduqJ.mjs +0 -1180
  1135. package/dist/entry-lock-yIkBduqJ.mjs.map +0 -1
  1136. package/dist/env-types-DkHYR2pl.mjs +0 -38
  1137. package/dist/env-types-DkHYR2pl.mjs.map +0 -1
  1138. package/dist/error-DIYXAVk4.mjs +0 -90
  1139. package/dist/error-DIYXAVk4.mjs.map +0 -1
  1140. package/dist/errors-CNvATh_7.mjs +0 -469
  1141. package/dist/errors-CNvATh_7.mjs.map +0 -1
  1142. package/dist/errors-CjXd1LgH.mjs +0 -120
  1143. package/dist/errors-CjXd1LgH.mjs.map +0 -1
  1144. package/dist/escape-B1GM0yJU.mjs +0 -9
  1145. package/dist/escape-B1GM0yJU.mjs.map +0 -1
  1146. package/dist/fence-8MaKKWhp.mjs +0 -162
  1147. package/dist/fence-8MaKKWhp.mjs.map +0 -1
  1148. package/dist/field-defs-cache-DEkFYCDE.mjs +0 -77
  1149. package/dist/field-defs-cache-DEkFYCDE.mjs.map +0 -1
  1150. package/dist/field-map-D7ioN0r0.mjs +0 -83
  1151. package/dist/field-map-D7ioN0r0.mjs.map +0 -1
  1152. package/dist/fts-manager-DU03MxWu.mjs +0 -443
  1153. package/dist/fts-manager-DU03MxWu.mjs.map +0 -1
  1154. package/dist/gc-DMiE7ezk.mjs +0 -75
  1155. package/dist/gc-DMiE7ezk.mjs.map +0 -1
  1156. package/dist/hash-CY4QdeMJ.mjs +0 -37
  1157. package/dist/hash-CY4QdeMJ.mjs.map +0 -1
  1158. package/dist/hook-result-Cb67D3P3.d.mts +0 -31
  1159. package/dist/hook-result-Cb67D3P3.d.mts.map +0 -1
  1160. package/dist/hreflang-Bterc3b7.mjs +0 -105
  1161. package/dist/hreflang-Bterc3b7.mjs.map +0 -1
  1162. package/dist/hreflang-uIBOE5yg.d.mts +0 -50
  1163. package/dist/hreflang-uIBOE5yg.d.mts.map +0 -1
  1164. package/dist/http-route-dispatch-DubjTibD.mjs +0 -339
  1165. package/dist/http-route-dispatch-DubjTibD.mjs.map +0 -1
  1166. package/dist/identity-DJ-5AcdG.mjs +0 -35
  1167. package/dist/identity-DJ-5AcdG.mjs.map +0 -1
  1168. package/dist/import-DEfuIgRz.mjs +0 -2020
  1169. package/dist/import-DEfuIgRz.mjs.map +0 -1
  1170. package/dist/index-xCy3j0f6.d.mts +0 -623
  1171. package/dist/index-xCy3j0f6.d.mts.map +0 -1
  1172. package/dist/init-lock-4eRRB4Le.mjs +0 -56
  1173. package/dist/init-lock-4eRRB4Le.mjs.map +0 -1
  1174. package/dist/install-finalization-DeGRbaVa.mjs +0 -58
  1175. package/dist/install-finalization-DeGRbaVa.mjs.map +0 -1
  1176. package/dist/keys-DWwMxdZh.mjs +0 -61
  1177. package/dist/keys-DWwMxdZh.mjs.map +0 -1
  1178. package/dist/kinds-D1A-00-F.mjs +0 -974
  1179. package/dist/kinds-D1A-00-F.mjs.map +0 -1
  1180. package/dist/lifecycle-BWtBGNEn.mjs +0 -25
  1181. package/dist/lifecycle-BWtBGNEn.mjs.map +0 -1
  1182. package/dist/load-BR1NEa_3.mjs +0 -28
  1183. package/dist/load-BR1NEa_3.mjs.map +0 -1
  1184. package/dist/loader-D4edocWH.mjs +0 -1197
  1185. package/dist/loader-D4edocWH.mjs.map +0 -1
  1186. package/dist/loops-DLaHFrvI.mjs +0 -205
  1187. package/dist/loops-DLaHFrvI.mjs.map +0 -1
  1188. package/dist/manifest-builder-8jsSLR7s.mjs +0 -189
  1189. package/dist/manifest-builder-8jsSLR7s.mjs.map +0 -1
  1190. package/dist/manifest-schema-DcZjRNEv.mjs +0 -496
  1191. package/dist/manifest-schema-DcZjRNEv.mjs.map +0 -1
  1192. package/dist/marketplace-CNxjq10S.mjs +0 -257
  1193. package/dist/marketplace-CNxjq10S.mjs.map +0 -1
  1194. package/dist/media-3v7mqAVX.mjs +0 -294
  1195. package/dist/media-3v7mqAVX.mjs.map +0 -1
  1196. package/dist/media-Bs6qmlVl.mjs +0 -408
  1197. package/dist/media-Bs6qmlVl.mjs.map +0 -1
  1198. package/dist/media-CputjGE1.mjs +0 -373
  1199. package/dist/media-CputjGE1.mjs.map +0 -1
  1200. package/dist/media-allowlist-isqF1gAh.mjs +0 -44
  1201. package/dist/media-allowlist-isqF1gAh.mjs.map +0 -1
  1202. package/dist/media-folders-D2VdVBf6.mjs +0 -210
  1203. package/dist/media-folders-D2VdVBf6.mjs.map +0 -1
  1204. package/dist/media-url-DbkMY3y6.mjs +0 -43
  1205. package/dist/media-url-DbkMY3y6.mjs.map +0 -1
  1206. package/dist/media-usage-activation-BaT4AlNI.mjs +0 -78
  1207. package/dist/media-usage-activation-BaT4AlNI.mjs.map +0 -1
  1208. package/dist/media-usage-v43L0kR_.mjs +0 -282
  1209. package/dist/media-usage-v43L0kR_.mjs.map +0 -1
  1210. package/dist/media-usage-work-CY8gIeU-.mjs +0 -151
  1211. package/dist/media-usage-work-CY8gIeU-.mjs.map +0 -1
  1212. package/dist/media-usage-work-VO108Q9E.mjs +0 -1015
  1213. package/dist/media-usage-work-VO108Q9E.mjs.map +0 -1
  1214. package/dist/menus-BYyeRemR.mjs +0 -3647
  1215. package/dist/menus-BYyeRemR.mjs.map +0 -1
  1216. package/dist/menus-mC_XTxD7.mjs +0 -92
  1217. package/dist/menus-mC_XTxD7.mjs.map +0 -1
  1218. package/dist/menus-trvc6_fW.mjs +0 -753
  1219. package/dist/menus-trvc6_fW.mjs.map +0 -1
  1220. package/dist/mime-IZf-LHIS.mjs +0 -36
  1221. package/dist/mime-IZf-LHIS.mjs.map +0 -1
  1222. package/dist/mode-B9-gMXL9.mjs +0 -23
  1223. package/dist/mode-B9-gMXL9.mjs.map +0 -1
  1224. package/dist/node-sqlite-compat-DztcWs4y.mjs +0 -63
  1225. package/dist/node-sqlite-compat-DztcWs4y.mjs.map +0 -1
  1226. package/dist/oauth-authorization-BIHy9SGU.mjs +0 -274
  1227. package/dist/oauth-authorization-BIHy9SGU.mjs.map +0 -1
  1228. package/dist/oauth-clients-BZWZvKXa.mjs +0 -266
  1229. package/dist/oauth-clients-BZWZvKXa.mjs.map +0 -1
  1230. package/dist/oauth-state-store-CxXTjXdI.mjs +0 -50
  1231. package/dist/oauth-state-store-CxXTjXdI.mjs.map +0 -1
  1232. package/dist/oauth-user-lookup-GWojfxRl.mjs +0 -26
  1233. package/dist/oauth-user-lookup-GWojfxRl.mjs.map +0 -1
  1234. package/dist/options-DRF6dlXY.d.mts +0 -81
  1235. package/dist/options-DRF6dlXY.d.mts.map +0 -1
  1236. package/dist/ownership-Bd77AmJz.mjs +0 -12
  1237. package/dist/ownership-Bd77AmJz.mjs.map +0 -1
  1238. package/dist/parse-5Y0W39xR.mjs +0 -81
  1239. package/dist/parse-5Y0W39xR.mjs.map +0 -1
  1240. package/dist/parse-BPblgoa-.d.mts +0 -172
  1241. package/dist/parse-BPblgoa-.d.mts.map +0 -1
  1242. package/dist/passkey-config-PiQ5cBnt.mjs +0 -46
  1243. package/dist/passkey-config-PiQ5cBnt.mjs.map +0 -1
  1244. package/dist/paths-DkS74lBM.mjs +0 -77
  1245. package/dist/paths-DkS74lBM.mjs.map +0 -1
  1246. package/dist/patterns-DyZJ67I7.mjs +0 -140
  1247. package/dist/patterns-DyZJ67I7.mjs.map +0 -1
  1248. package/dist/placeholder-Bez2282x.d.mts +0 -306
  1249. package/dist/placeholder-Bez2282x.d.mts.map +0 -1
  1250. package/dist/plan-Lw7iGnGD.mjs +0 -135
  1251. package/dist/plan-Lw7iGnGD.mjs.map +0 -1
  1252. package/dist/plugins-D7xSh1Lu.mjs +0 -277
  1253. package/dist/plugins-D7xSh1Lu.mjs.map +0 -1
  1254. package/dist/policy-DMRiMdLn.mjs +0 -45
  1255. package/dist/policy-DMRiMdLn.mjs.map +0 -1
  1256. package/dist/portable-text-kcyN3F-a.mjs +0 -307
  1257. package/dist/portable-text-kcyN3F-a.mjs.map +0 -1
  1258. package/dist/preview--2VDLaND.mjs +0 -107
  1259. package/dist/preview--2VDLaND.mjs.map +0 -1
  1260. package/dist/protocol-FvwLA8P-.d.mts +0 -61
  1261. package/dist/protocol-FvwLA8P-.d.mts.map +0 -1
  1262. package/dist/public-submission-BRyK76U8.mjs +0 -250
  1263. package/dist/public-submission-BRyK76U8.mjs.map +0 -1
  1264. package/dist/public-url-7j0cpCFc.mjs +0 -101
  1265. package/dist/public-url-7j0cpCFc.mjs.map +0 -1
  1266. package/dist/query-BRNTde3V.mjs +0 -41
  1267. package/dist/query-BRNTde3V.mjs.map +0 -1
  1268. package/dist/query-DyYYWOKk.mjs +0 -1161
  1269. package/dist/query-DyYYWOKk.mjs.map +0 -1
  1270. package/dist/rate-limit-D0BcE76H.mjs +0 -120
  1271. package/dist/rate-limit-D0BcE76H.mjs.map +0 -1
  1272. package/dist/receipt-C4icyHlC.mjs +0 -43
  1273. package/dist/receipt-C4icyHlC.mjs.map +0 -1
  1274. package/dist/redirect-9DbtxSNG.mjs +0 -19
  1275. package/dist/redirect-9DbtxSNG.mjs.map +0 -1
  1276. package/dist/redirect-BvFKh8Sz.mjs +0 -416
  1277. package/dist/redirect-BvFKh8Sz.mjs.map +0 -1
  1278. package/dist/redirects-1nhdEaTq.mjs +0 -148
  1279. package/dist/redirects-1nhdEaTq.mjs.map +0 -1
  1280. package/dist/redirects-D1yMnSR9.mjs +0 -446
  1281. package/dist/redirects-D1yMnSR9.mjs.map +0 -1
  1282. package/dist/registry-CzPJNu3H.mjs +0 -8366
  1283. package/dist/registry-CzPJNu3H.mjs.map +0 -1
  1284. package/dist/relations-C8JpSkU6.mjs +0 -776
  1285. package/dist/relations-C8JpSkU6.mjs.map +0 -1
  1286. package/dist/request-meta-Bs60XW1m.mjs +0 -141
  1287. package/dist/request-meta-Bs60XW1m.mjs.map +0 -1
  1288. package/dist/resolve-BHWgMU_X.mjs +0 -100
  1289. package/dist/resolve-BHWgMU_X.mjs.map +0 -1
  1290. package/dist/revision-CGkQA0e5.mjs +0 -366
  1291. package/dist/revision-CGkQA0e5.mjs.map +0 -1
  1292. package/dist/route-wire-ClUVQduA.mjs +0 -197
  1293. package/dist/route-wire-ClUVQduA.mjs.map +0 -1
  1294. package/dist/routes-D2GFl3B7.mjs +0 -272
  1295. package/dist/routes-D2GFl3B7.mjs.map +0 -1
  1296. package/dist/runner-CLpxmhl8.mjs +0 -6197
  1297. package/dist/runner-CLpxmhl8.mjs.map +0 -1
  1298. package/dist/runner-CWl76CH3.d.mts +0 -68
  1299. package/dist/runner-CWl76CH3.d.mts.map +0 -1
  1300. package/dist/schema-27XefSYG.mjs +0 -13
  1301. package/dist/schema-27XefSYG.mjs.map +0 -1
  1302. package/dist/schema-Btvj3BMh.mjs +0 -815
  1303. package/dist/schema-Btvj3BMh.mjs.map +0 -1
  1304. package/dist/scopes-DGCj6K4p.mjs +0 -34
  1305. package/dist/scopes-DGCj6K4p.mjs.map +0 -1
  1306. package/dist/search-pZRRmWjh.mjs +0 -448
  1307. package/dist/search-pZRRmWjh.mjs.map +0 -1
  1308. package/dist/secrets-CIi0nFiR.mjs +0 -341
  1309. package/dist/secrets-CIi0nFiR.mjs.map +0 -1
  1310. package/dist/sections-CIhqs3Ao.mjs +0 -346
  1311. package/dist/sections-CIhqs3Ao.mjs.map +0 -1
  1312. package/dist/seo-DifeiGdl.mjs +0 -114
  1313. package/dist/seo-DifeiGdl.mjs.map +0 -1
  1314. package/dist/seo-DpYxmGaL.mjs +0 -133
  1315. package/dist/seo-DpYxmGaL.mjs.map +0 -1
  1316. package/dist/service-COVdVpSK.mjs +0 -150
  1317. package/dist/service-COVdVpSK.mjs.map +0 -1
  1318. package/dist/session-user-C6IEjuty.mjs +0 -61
  1319. package/dist/session-user-C6IEjuty.mjs.map +0 -1
  1320. package/dist/settings-CwcrX-Ay.mjs +0 -61
  1321. package/dist/settings-CwcrX-Ay.mjs.map +0 -1
  1322. package/dist/settings-D_cJtT48.mjs +0 -439
  1323. package/dist/settings-D_cJtT48.mjs.map +0 -1
  1324. package/dist/settings-tnPQN3Z2.mjs +0 -51
  1325. package/dist/settings-tnPQN3Z2.mjs.map +0 -1
  1326. package/dist/setup-complete-BOrI10UY.mjs +0 -65
  1327. package/dist/setup-complete-BOrI10UY.mjs.map +0 -1
  1328. package/dist/setup-nonce-0XTBLTsX.mjs +0 -25
  1329. package/dist/setup-nonce-0XTBLTsX.mjs.map +0 -1
  1330. package/dist/single-flight-cache-B5O2qhO1.mjs +0 -104
  1331. package/dist/single-flight-cache-B5O2qhO1.mjs.map +0 -1
  1332. package/dist/site-settings-B7vGFRDT.mjs +0 -50
  1333. package/dist/site-settings-B7vGFRDT.mjs.map +0 -1
  1334. package/dist/site-url-wEYRMHBv.mjs +0 -16
  1335. package/dist/site-url-wEYRMHBv.mjs.map +0 -1
  1336. package/dist/slugify-T5GHH42D.mjs +0 -17
  1337. package/dist/slugify-T5GHH42D.mjs.map +0 -1
  1338. package/dist/snapshot-W36KbLmc.mjs +0 -414
  1339. package/dist/snapshot-W36KbLmc.mjs.map +0 -1
  1340. package/dist/ssrf-CRJ-xom5.mjs +0 -406
  1341. package/dist/ssrf-CRJ-xom5.mjs.map +0 -1
  1342. package/dist/stage-DA0NrTRZ.mjs +0 -662
  1343. package/dist/stage-DA0NrTRZ.mjs.map +0 -1
  1344. package/dist/staged-Bw5eHbKS.mjs +0 -686
  1345. package/dist/staged-Bw5eHbKS.mjs.map +0 -1
  1346. package/dist/state-BTlprvUF.mjs +0 -153
  1347. package/dist/state-BTlprvUF.mjs.map +0 -1
  1348. package/dist/status-C6IrSLMT.mjs +0 -30
  1349. package/dist/status-C6IrSLMT.mjs.map +0 -1
  1350. package/dist/storage-query-CdVF2bng.d.mts +0 -1614
  1351. package/dist/storage-query-CdVF2bng.d.mts.map +0 -1
  1352. package/dist/tar-BGOZARjy.mjs +0 -449
  1353. package/dist/tar-BGOZARjy.mjs.map +0 -1
  1354. package/dist/target-YhYH_0uc.mjs +0 -27
  1355. package/dist/target-YhYH_0uc.mjs.map +0 -1
  1356. package/dist/taxonomies-DK_XBrmT.mjs +0 -697
  1357. package/dist/taxonomies-DK_XBrmT.mjs.map +0 -1
  1358. package/dist/taxonomies-S1M3rUC0.mjs +0 -939
  1359. package/dist/taxonomies-S1M3rUC0.mjs.map +0 -1
  1360. package/dist/taxonomy-BesdHIwi.mjs +0 -525
  1361. package/dist/taxonomy-BesdHIwi.mjs.map +0 -1
  1362. package/dist/tokens-B_ffPF1q.mjs +0 -171
  1363. package/dist/tokens-B_ffPF1q.mjs.map +0 -1
  1364. package/dist/transfer-9fVSxyrV.mjs +0 -166
  1365. package/dist/transfer-9fVSxyrV.mjs.map +0 -1
  1366. package/dist/transfer-B7LUTaYD.mjs +0 -8855
  1367. package/dist/transfer-B7LUTaYD.mjs.map +0 -1
  1368. package/dist/transfer-download-BdNq4VWN.mjs +0 -33
  1369. package/dist/transfer-download-BdNq4VWN.mjs.map +0 -1
  1370. package/dist/transformations-BtQdvyly.mjs +0 -196
  1371. package/dist/transformations-BtQdvyly.mjs.map +0 -1
  1372. package/dist/transport-CriYXY1c.mjs +0 -136
  1373. package/dist/transport-CriYXY1c.mjs.map +0 -1
  1374. package/dist/transport-SnhS6xku.d.mts +0 -42
  1375. package/dist/transport-SnhS6xku.d.mts.map +0 -1
  1376. package/dist/trusted-proxy-C0eHXPd-.mjs +0 -51
  1377. package/dist/trusted-proxy-C0eHXPd-.mjs.map +0 -1
  1378. package/dist/turnstile-BNPrWd1e.mjs +0 -53
  1379. package/dist/turnstile-BNPrWd1e.mjs.map +0 -1
  1380. package/dist/types-B8sF_kE5.d.mts +0 -287
  1381. package/dist/types-B8sF_kE5.d.mts.map +0 -1
  1382. package/dist/types-BYVIYOlD.d.mts +0 -1720
  1383. package/dist/types-BYVIYOlD.d.mts.map +0 -1
  1384. package/dist/types-Bs4bi95j.d.mts +0 -374
  1385. package/dist/types-Bs4bi95j.d.mts.map +0 -1
  1386. package/dist/types-CGuODCZi.d.mts +0 -198
  1387. package/dist/types-CGuODCZi.d.mts.map +0 -1
  1388. package/dist/types-CVsmpTcU.mjs +0 -18
  1389. package/dist/types-CVsmpTcU.mjs.map +0 -1
  1390. package/dist/types-ClFEExxn.mjs +0 -37
  1391. package/dist/types-ClFEExxn.mjs.map +0 -1
  1392. package/dist/types-D994zUWB.d.mts +0 -85
  1393. package/dist/types-D994zUWB.d.mts.map +0 -1
  1394. package/dist/types-DAj1ByJQ.d.mts +0 -125
  1395. package/dist/types-DAj1ByJQ.d.mts.map +0 -1
  1396. package/dist/types-Dlv6esp4.mjs +0 -77
  1397. package/dist/types-Dlv6esp4.mjs.map +0 -1
  1398. package/dist/types-Dr1LVwL7.d.mts +0 -363
  1399. package/dist/types-Dr1LVwL7.d.mts.map +0 -1
  1400. package/dist/types-MN9bOQ1g.d.mts +0 -198
  1401. package/dist/types-MN9bOQ1g.d.mts.map +0 -1
  1402. package/dist/types-d2Szb1oz.mjs +0 -16
  1403. package/dist/types-d2Szb1oz.mjs.map +0 -1
  1404. package/dist/types-ibtP7GEA.d.mts +0 -896
  1405. package/dist/types-ibtP7GEA.d.mts.map +0 -1
  1406. package/dist/types-j6MBDjlZ.mjs +0 -103
  1407. package/dist/types-j6MBDjlZ.mjs.map +0 -1
  1408. package/dist/update-check-D8No-E5s.mjs +0 -161
  1409. package/dist/update-check-D8No-E5s.mjs.map +0 -1
  1410. package/dist/upload-attempts-BodUoFBu.mjs +0 -32
  1411. package/dist/upload-attempts-BodUoFBu.mjs.map +0 -1
  1412. package/dist/url-pattern-DGAG6ZP2.mjs +0 -41
  1413. package/dist/url-pattern-DGAG6ZP2.mjs.map +0 -1
  1414. package/dist/user-BOvuF1sQ.mjs +0 -171
  1415. package/dist/user-BOvuF1sQ.mjs.map +0 -1
  1416. package/dist/utils-Dr01wRKt.mjs +0 -439
  1417. package/dist/utils-Dr01wRKt.mjs.map +0 -1
  1418. package/dist/validate-BttYU7NK.mjs +0 -516
  1419. package/dist/validate-BttYU7NK.mjs.map +0 -1
  1420. package/dist/validate-Df09inbC.d.mts +0 -468
  1421. package/dist/validate-Df09inbC.d.mts.map +0 -1
  1422. package/dist/validation-DH2WRwWO.mjs +0 -219
  1423. package/dist/validation-DH2WRwWO.mjs.map +0 -1
  1424. package/dist/version-BbygH8CT.mjs +0 -7
  1425. package/dist/version-BbygH8CT.mjs.map +0 -1
  1426. package/dist/version-CseoDDOd.mjs +0 -9
  1427. package/dist/version-CseoDDOd.mjs.map +0 -1
  1428. package/dist/virtual-modules-82GlnQyG.mjs +0 -516
  1429. package/dist/virtual-modules-82GlnQyG.mjs.map +0 -1
  1430. package/dist/widgets-DMAgGcQt.mjs +0 -126
  1431. package/dist/widgets-DMAgGcQt.mjs.map +0 -1
  1432. package/dist/wxr-taxonomies-Bi5kFSxQ.mjs +0 -453
  1433. package/dist/wxr-taxonomies-Bi5kFSxQ.mjs.map +0 -1
  1434. package/dist/wxr-taxonomies-y_FpYlDn.d.mts +0 -34
  1435. package/dist/wxr-taxonomies-y_FpYlDn.d.mts.map +0 -1
  1436. package/dist/zod-generator-DnfG5sGQ.mjs +0 -424
  1437. package/dist/zod-generator-DnfG5sGQ.mjs.map +0 -1
  1438. /package/dist/{api-tokens-B4COohsb.mjs → api-tokens-D2zgAIEt.mjs} +0 -0
  1439. /package/dist/{ssrf-sC4_5rxm.mjs → ssrf-BvNItdxk.mjs} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage-query-CdVF2bng.d.mts","names":[],"sources":["../src/config/secrets.ts","../src/datetime-normalization.ts","../src/database/content-datetime.ts","../src/database/repositories/content.ts","../src/media/focal-point.ts","../src/database/repositories/media.ts","../src/database/repositories/plugin-storage.ts","../src/plugins/hooks.ts","../src/plugins/email.ts","../src/plugins/settings.ts","../src/plugins/content-access.ts","../src/plugins/context.ts","../src/plugins/sandbox/types.ts","../src/plugins/cron.ts","../src/plugins/byline-access.ts","../src/plugins/media.ts","../src/plugins/storage-query.ts"],"mappings":";;;;;;;;;;;;;;;;UA6EiB,mBAAA;;EAEhB,GAAA;EC/CgB;EDiDhB,GAAA,EAAK,UAAA;;EAEL,GAAA;AAAA;;UAyCgB,UAAA;;;AG3EjB;;;EHiFC,qBAAA;EACA,qBAAA;EG+LY;EH7LZ,cAAA;EACA,cAAA;EGgMoB;;;;;;EHzLpB,kBAAA;EG2XsE;EHzXtE,WAAA;AAAA;;;;;;;;iBA6Ge,2BAAA,CACf,GAAA,GAAM,UAAA,GACJ,OAAA,CAAQ,mBAAA;;;UC9NM,uBAAA;EAChB,IAAA;EACA,IAAA;EACA,iBAAA;AAAA;;;UCrBS,kBAAA;EACT,IAAA;EACA,YAAA;AAAA;AAAA,UAGS,eAAA;EACT,QAAA;EACA,MAAA,EAAQ,uBAAA;EACR,SAAA,EAAW,kBAAA;AAAA;;;;;;;KAiCA,oBAAA,GAAuB,GAAA,SAAY,OAAA,CAAQ,eAAA;;;KCN3C,2BAAA,GAA8B,IAAA,CAAK,WAAA;;AH4B/C;;;;;cGqPa,iBAAA;EAAA,QAIH,EAAA;EAAA,iBACS,gBAAA;EAAA,iBAJD,SAAA;cAGR,EAAA,EAAI,MAAA,CAAO,QAAA,GACF,gBAAA,GAAmB,oBAAA;EH3MrB;;;EGmNV,MAAA,CAAO,KAAA,EAAO,kBAAA,GAAqB,OAAA,CAAQ,WAAA;EH7MjD;;;;;;;;AA0HD;EGoNO,kBAAA,CAAmB,IAAA,UAAc,IAAA,UAAc,MAAA,YAAkB,OAAA;;;;;;EAwDjE,SAAA,CAAU,IAAA,UAAc,EAAA,UAAY,QAAA,YAAoB,OAAA,CAAQ,WAAA;EH3QhE;;;EGsTA,QAAA,CAAS,IAAA,UAAc,EAAA,WAAa,OAAA,CAAQ,WAAA;EAiB5C,aAAA,CACL,IAAA,UACA,GAAA,YACA,OAAA;IAAW,cAAA;EAAA,IACT,OAAA,CAAQ,GAAA,SAAY,WAAA;EAkBjB,uBAAA,CACL,IAAA,UACA,KAAA,YACA,MAAA,UACA,OAAA;IAAW,cAAA;EAAA,IACT,OAAA,CAAQ,GAAA,SAAY,WAAA;EF/jBgB;;;;;;;;EEylBjC,wBAAA,CACL,IAAA,UACA,EAAA,WACE,OAAA,EAAS,WAAA;IAAgB,SAAA;EAAA;ED9mBnB;;;;ECqoBH,cAAA,CACL,IAAA,UACA,UAAA,UACA,MAAA,YACE,OAAA,CAAQ,WAAA;EDpoBF;;;;EC4oBH,8BAAA,CACL,IAAA,UACA,UAAA,UACA,MAAA,YACE,OAAA,CAAQ,WAAA;EAIL,SAAA,CAAU,IAAA,UAAc,EAAA,WAAa,OAAA;EAAA,QAW7B,eAAA;ED5pBd;;;ECqsBM,UAAA,CAAW,IAAA,UAAc,IAAA,UAAc,MAAA,YAAkB,OAAA,CAAQ,WAAA;EDpqB5D;;;;ECksBL,0BAAA,CACL,IAAA,UACA,IAAA,UACA,MAAA,YACE,OAAA,CAAQ,WAAA;EDtsBuB;;;ECiuB5B,QAAA,CACL,IAAA,UACA,OAAA,GAAS,eAAA,GACP,OAAA,CAAQ,cAAA,CAAe,WAAA;EDpuBoB;;;ECu4BxC,MAAA,CAAO,IAAA,UAAc,EAAA,UAAY,KAAA,EAAO,kBAAA,GAAqB,OAAA,CAAQ,WAAA;EAqErE,eAAA,CACL,IAAA,UACA,EAAA,UACA,YAAA,EAAc,MAAA,mBACd,QAAA,WACE,OAAA;IAAU,IAAA,EAAM,WAAA;IAAa,UAAA;EAAA;EAuG1B,oBAAA,CACL,IAAA,UACA,EAAA,UACA,YAAA,EAAc,MAAA,mBACd,QAAA,WACE,OAAA;;;;AAlzBJ;EAu3BO,gBAAA,CACL,IAAA,UACA,EAAA,UACA,KAAA,EAAO,kBAAA,GACL,OAAA,CAAQ,WAAA;EAAA,QA+FG,sBAAA;EAAA,QAaA,6BAAA;EAn+BD;;;;;;;;;;;;;;;EAqjCP,yBAAA,CACL,IAAA,UACA,QAAA,UACA,gBAAA,UACA,IAAA,EAAM,MAAA,mBACN,OAAA;IAAW,QAAA,GAAW,MAAA;EAAA,IACpB,OAAA;EAAA,QA+CW,iBAAA;EAzxBX;;;EAu3BG,MAAA,CAAO,IAAA,UAAc,EAAA,WAAa,OAAA;EAnzB+B;;;;;;;EA40BjE,OAAA,CACL,IAAA,UACA,EAAA,UACA,gBAAA,GAAmB,2BAAA,GACjB,OAAA,CAAQ,WAAA;EA7mBmC;;;EAwE/B;;;;;;;;;;EA+kBT,eAAA,CAAgB,IAAA,UAAc,EAAA,WAAa,OAAA;EAvET;;;EAwFlC,WAAA,CACL,IAAA,UACA,OAAA,GAAS,IAAA,CAAK,eAAA;IAA8B,KAAA;MAAU,MAAA;IAAA;EAAA,IACpD,OAAA,CAAQ,cAAA,CAAe,WAAA;IAAgB,SAAA;EAAA;EA4E2B;;;EAA/D,YAAA,CAAa,IAAA,UAAc,OAAA;IAAW,MAAA;EAAA,IAAyB,OAAA;EAuTvD;;;;;;;;;;;;;;;;EAAA,QAtRN,iBAAA;EAugBL;;;;;;EAAA,QA3dK,eAAA;EAklBL;;;;;;;;;;;;;EAAA,QAljBK,iBAAA;EA59CC;;;EA6jDH,KAAA,CAAM,IAAA,UAAc,KAAA,GAAQ,eAAA,YAA2B,OAAA;EAAA,QAK/C,wBAAA;EAlkDM;;;;;;EAymDd,qBAAA,CAAsB,IAAA,WAAe,OAAA;EAerC,QAAA,CACL,IAAA,UACA,GAAA,GAAG,IAAA,GACD,OAAA;IACF,KAAA;IACA,SAAA;IACA,KAAA;IACA,SAAA;IACA,gBAAA;EAAA;EA97CK;;;;;;EAg+CA,QAAA,CACL,IAAA,UACA,EAAA,UACA,WAAA,UACA,WAAA,GAAa,IAAA,EACb,gBAAA,GAAmB,2BAAA,GACjB,OAAA,CAAQ,WAAA;EA37CI;;;;;;EAg/CT,UAAA,CACL,IAAA,UACA,EAAA,UACA,gBAAA,GAAmB,2BAAA,GACjB,OAAA,CAAQ,WAAA;EAh+CC;;;;;;;;;;;;EAqhDN,kBAAA,CACL,IAAA,UACA,KAAA,WACA,WAAA,GAAa,IAAA,EACb,KAAA;IAAU,WAAA;IAAqB,EAAA;EAAA,IAC7B,OAAA,CAAQ,WAAA;EA2BL,kBAAA,CAAmB,IAAA,UAAc,gBAAA,WAA2B,OAAA;EAU5D,2BAAA,CACL,IAAA,UACA,iBAAA,aACE,OAAA,CAAQ,GAAA;EA7gDC;;;EAkiDN,gBAAA,CAAiB,IAAA,UAAc,gBAAA,WAA2B,OAAA,CAAQ,WAAA;EAzgDvE;;;;;;EA4hDK,+BAAA,CACL,IAAA,UACA,gBAAA,UACA,OAAA;IAAW,SAAA;EAAA,IACT,OAAA;EAlhDQ;;;;;;;;;;;;;;;;;;;;EAsjDL,yBAAA,CACL,IAAA,UACA,iBAAA,YACA,OAAA;IAAW,aAAA;EAAA,IACT,OAAA,CAAQ,WAAA;EAl8CA;;;;;;;;;;;;;EAu+CL,kBAAA,CAAmB,IAAA,UAAc,WAAA,aAAwB,OAAA,CAAQ,GAAA,SAAY,WAAA;EA3vClF;;;;;;;;;;;;;;;;;;;;EAm0CK,OAAA,CACL,IAAA,UACA,EAAA,UACA,WAAA,WACA,UAAA,YACA,mBAAA,WACA,eAAA,YACA,WAAA,YACA,gBAAA,GAAmB,2BAAA,EACnB,WAAA,GAAa,IAAA,GACX,OAAA,CAAQ,WAAA;EAz9BL;;;;;;;EAiuCA,SAAA,CACL,IAAA,UACA,EAAA,UACA,gBAAA,GAAmB,2BAAA,GACjB,OAAA,CAAQ,WAAA;EAhuCV;;;;;;;;;;;EA+yCK,gBAAA,CAAiB,IAAA,UAAc,EAAA,UAAY,UAAA,WAAqB,OAAA;EAqBhE,oBAAA,CACL,IAAA,UACA,EAAA,UACA,UAAA,UACA,QAAA,EAAU,IAAA,CAAK,WAAA,sDACb,OAAA;EA9pCQ;;;;;;EAyrCL,YAAA,CACL,IAAA,UACA,EAAA,UACA,gBAAA,GAAmB,2BAAA,GACjB,OAAA,CAAQ,WAAA;EAhoCD;;;;;EA6qCJ,cAAA,CAAe,IAAA,WAAe,OAAA;EA5qCzB;;;;;EAAA,QA6rCH,MAAA;EAAA,QA6BA,qBAAA;EAAA,QA0CA,oBAAA;EAAA,QAsDM,gBAAA;EAAA,QASA,mBAAA;EAAA,QA+DN,iBAAA;EAxmCF;;;;EAAA,QAwpCE,aAAA;EAAA,QAiBM,iBAAA;AAAA;;;UCviGE,gBAAA;EAChB,MAAA;EACA,MAAA;AAAA;;;KC+CW,WAAA;AAAA,UAEK,SAAA;EAChB,EAAA;EACA,QAAA;EACA,QAAA;EACA,IAAA;EACA,KAAA;EACA,MAAA;EACA,MAAA;EACA,MAAA;EACA,GAAA;EACA,OAAA;EACA,UAAA;EACA,MAAA,EAAQ,WAAA;EACR,WAAA;EACA,QAAA;EACA,aAAA;EACA,SAAA;EACA,QAAA;EACA,QAAA;AAAA;AAAA,UAGgB,gBAAA;EAChB,QAAA;EACA,QAAA;EACA,IAAA;EACA,KAAA;EACA,MAAA;EACA,GAAA;EACA,OAAA;EACA,UAAA;EACA,WAAA;EACA,QAAA;EACA,aAAA;EACA,MAAA,GAAS,WAAA;EACT,QAAA;EACA,QAAA;AAAA;AAAA,UAGgB,oBAAA;EAChB,KAAA;EACA,MAAA;EL8J6B;EK5J7B,QAAA;EACA,MAAA,GAAS,WAAA;;EAET,CAAA;EJrEuC;EIuEvC,QAAA;AAAA;AAAA,UAGgB,gBAAA,SAAyB,gBAAA;EACzC,GAAA;EACA,OAAA;EACA,KAAA;EACA,MAAA;EACA,QAAA;AAAA;AAAA,UAGgB,sBAAA;EAChB,IAAA;EACA,KAAA;EACA,MAAA;EACA,WAAA;AAAA;AAAA,UAGgB,oBAAA,SAA6B,IAAA,CAAK,oBAAA;EAClD,IAAA;AAAA;AAAA,UAGgB,eAAA;EAChB,KAAA,EAAO,SAAA;EACP,UAAA;AAAA;;;;cASY,eAAA;EAAA,QACQ,EAAA;cAAA,EAAA,EAAI,MAAA,CAAO,QAAA;;;;EAKzB,MAAA,CAAO,KAAA,EAAO,gBAAA,GAAmB,OAAA,CAAQ,SAAA;EHvFV;;;EGwH/B,aAAA,CAAc,KAAA;IACnB,QAAA;IACA,QAAA;IACA,IAAA;IACA,UAAA;IACA,WAAA;IACA,QAAA;IACA,QAAA;EAAA,IACG,OAAA,CAAQ,SAAA;EAON,mBAAA,CAAoB,OAAA,UAAiB,UAAA,WAAqB,OAAA;EF7IvB;;AAiR1C;;;EEjHO,yBAAA,CAA0B,OAAA,UAAiB,UAAA,WAAqB,OAAA;EAiBhE,gBAAA,CAAiB,UAAA,WAAqB,OAAA;EAStC,4BAAA,CAA6B,UAAA,WAAqB,OAAA;EAoBlD,mBAAA,CAAoB,UAAA,WAAqB,OAAA;EAOzC,yBAAA,CAA0B,UAAA,WAAqB,OAAA;EAQ/C,6BAAA,CAAA,GAAiC,OAAA;EAkBjC,4BAAA,CACL,QAAA,WACA,KAAA,YACE,OAAA;EAuBG,wBAAA,CACL,EAAA,UACA,kBAAA,UACA,UAAA,UACA,WAAA,YACE,OAAA;EFyM2D;;;EE7KxD,aAAA,CACL,EAAA,UACA,QAAA;IACC,KAAA;IACA,MAAA;IACA,IAAA;IACA,QAAA;IACA,aAAA;IACA,WAAA;EAAA,GAED,kBAAA,YACE,OAAA,CAAQ,SAAA;EFiTA;;;EErRL,UAAA,CAAW,EAAA,UAAY,kBAAA,YAA8B,OAAA,CAAQ,SAAA;EFqSxB;;;EExRrC,uBAAA,CAAwB,UAAA,WAAqB,OAAA,CAAQ,SAAA;EF8WxD;;;EEhWG,QAAA,CAAS,EAAA,WAAa,OAAA,CAAQ,SAAA;EF8XjC;;;;EEhXG,cAAA,CAAe,QAAA,WAAmB,OAAA,CAAQ,SAAA;EAU1C,qBAAA,CAAsB,QAAA,WAAmB,OAAA;EFmlB5C;;;;EEvjBG,iBAAA,CAAkB,WAAA,WAAsB,OAAA,CAAQ,SAAA;EF4uBnD;;;;;;EE3tBG,QAAA,CAAS,OAAA,GAAS,oBAAA,GAA4B,OAAA,CAAQ,cAAA,CAAe,SAAA;EAoCrE,QAAA,CAAS,OAAA,EAAS,oBAAA,GAAuB,OAAA,CAAQ,eAAA;EF+kCN;;;EEvjC3C,MAAA,CAAO,EAAA,UAAY,KAAA,EAAO,gBAAA,GAAmB,OAAA,CAAQ,SAAA;EAwBrD,mBAAA,CACL,EAAA,UACA,KAAA,EAAO,IAAA,CAAK,gBAAA,6CACV,OAAA,CAAQ,SAAA;EAuBL,gBAAA,CACL,EAAA,UACA,kBAAA,UACA,KAAA,EAAO,sBAAA,GACL,OAAA,CAAQ,SAAA;EFimC0D;;;EExkC/D,oBAAA,CAAqB,EAAA,WAAa,OAAA;EAUlC,sBAAA,CAAuB,UAAA,WAAqB,OAAA;EAS5C,MAAA,CAAO,EAAA,WAAa,OAAA;EF42CZ;;;EEr2CR,KAAA,CAAM,QAAA,gCAAwC,OAAA;EAAA,QAY5C,gBAAA;EFo5CG;;;;;;;EE72CL,qBAAA,CAAsB,QAAA,YAAoC,OAAA;EFo+CQ;;;EAAA,QEr8ChE,SAAA;AAAA;;;cCtmBI,uBAAA,yBAAgD,iBAAA,CAAkB,CAAA;EAAA,QAIrE,EAAA;EAAA,QACA,QAAA;EAAA,QACA,UAAA;EAAA,QALD,aAAA;cAGC,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,QAAA,UACA,UAAA,UACR,OAAA,EAAS,KAAA;ENvCP;AAyCJ;;EMMO,GAAA,CAAI,EAAA,WAAa,OAAA,CAAQ,CAAA;ENNL;;;EMuBpB,GAAA,CAAI,EAAA,UAAY,IAAA,EAAM,CAAA,GAAI,OAAA;EA0B1B,YAAA,CAAa,EAAA,WAAa,OAAA,CAAQ,cAAA,CAAe,CAAA;EAajD,aAAA,CACL,EAAA,UACA,gBAAA,iBACA,IAAA,EAAM,CAAA,GACJ,OAAA,CAAQ,sBAAA;EAkCL,gBAAA,CAAiB,EAAA,UAAY,gBAAA,WAA2B,OAAA,CAAQ,uBAAA;ENjF3D;;AA6GZ;EMXO,MAAA,CAAO,EAAA,WAAa,OAAA;;;;EAcpB,MAAA,CAAO,EAAA,WAAa,OAAA;ENDjB;;;EMgBH,OAAA,CAAQ,GAAA,aAAgB,OAAA,CAAQ,GAAA,SAAY,CAAA;ENhBhD;;;EMsCI,OAAA,CAAQ,KAAA,EAAO,KAAA;IAAQ,EAAA;IAAY,IAAA,EAAM,CAAA;EAAA,KAAO,OAAA;ELpQtC;;;EKySV,UAAA,CAAW,GAAA,aAAgB,OAAA;ELxSjC;;;EKwTM,KAAA,CAAM,OAAA,GAAS,YAAA,GAAoB,OAAA,CAAQ,eAAA;IAAkB,EAAA;IAAY,IAAA,EAAM,CAAA;EAAA;;AJ7U3C;;EIycpC,KAAA,CAAM,KAAA,GAAQ,WAAA,GAAc,OAAA;EAwB5B,QAAA,CAAS,EAAA,UAAY,IAAA,YAAgB,OAAA,CAAQ,cAAA,CAAe,CAAA;AAAA;;;KCna9D,UAAA;AAAA,KA0CA,qBAAA;AAAA,KAKA,sBAAA;EACJ,YAAA;IAAiB,QAAA;IAAkB,MAAA;EAAA;EACnC,OAAA,EAAS,UAAA;AAAA;;;;UA4CO,UAAA;EAChB,OAAA;EACA,KAAA,GAAQ,CAAA;EACR,KAAA,GAAQ,KAAA;EACR,QAAA;EACA,QAAA;AAAA;;;;cAkBY,YAAA;EAAA,QACJ,KAAA;EAAA,QACA,SAAA;EAAA,QACA,cAAA;EP6DE;EAAA,QO3DF,qBAAA;EP2DqB;EAAA,QOxDrB,kBAAA;;;ANtKT;;UM4KS,mBAAA;cAEI,OAAA,EAAS,cAAA,IAAkB,cAAA,GAAiB,2BAAA;EN7KxD;;;;;;;;EMiMA,iBAAA,CAAkB,OAAA,EAAS,OAAA,CAAQ,2BAAA;ELpNR;;;EAAA,QK8NnB,UAAA;ELzNC;;;;;;;;EAAA,QK4OD,aAAA;ELzOqB;;AAiC9B;;;;;EAjC8B,QK+PrB,eAAA;EL9N6B;;;;;;;EAAA,wBK6Qb,wBAAA;;;AJnRzB;UI2TS,kBAAA;;;;UA4BA,YAAA;EJtEqB;;;EAAA,QI+ErB,SAAA;EJ1E6B;;;EAAA,QI6GvB,kBAAA;EJ4ByD;;;EIRjE,gBAAA,CAAiB,QAAA,WAAmB,OAAA,CAAQ,UAAA;EJ2GR;;;EIpGpC,iBAAA,CAAkB,QAAA,WAAmB,OAAA,CAAQ,UAAA;EJgJ5B;;;EIzIjB,mBAAA,CAAoB,QAAA,WAAmB,OAAA,CAAQ,UAAA;EJsKlD;;;EI/JG,kBAAA,CAAmB,QAAA,UAAkB,UAAA,YAAsB,OAAA,CAAQ,UAAA;EAAA,QAgC3D,gBAAA;EJ0K6B;;;;;;EI7HrC,oBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,UACA,KAAA,WACA,EAAA,WACA,KAAA,GAAQ,SAAA,GACN,OAAA;IACF,OAAA,EAAS,MAAA;IACT,OAAA,EAAS,UAAA,CAAW,MAAA;EAAA;EJ4YsD;;;EIxVrE,mBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,UACA,KAAA,WACA,KAAA,GAAQ,SAAA,EACR,eAAA,YACE,OAAA,CAAQ,UAAA;EJ4ZR;;;;EIlXG,sBAAA,CACL,EAAA,UACA,UAAA,WACE,OAAA;IAAU,OAAA;IAAkB,OAAA,EAAS,UAAA;EAAA;EJwuBrC;;;EI7rBG,qBAAA,CACL,EAAA,UACA,UAAA,UACA,SAAA,YACE,OAAA,CAAQ,UAAA;EAkCX,gBAAA,CACC,IAAA,2BACA,KAAA,EAAO,kBAAA,GACL,OAAA,CAAQ,sBAAA;EACX,gBAAA,CACC,IAAA,4BACA,KAAA,EAAO,0BAAA,GACL,OAAA,CAAQ,sBAAA;EACX,gBAAA,CACC,IAAA,6BACA,KAAA,EAAO,kBAAA,GACL,OAAA,CAAQ,sBAAA;EACX,gBAAA,CACC,IAAA,EAAM,qBAAA,EACN,KAAA,EAAO,kBAAA,GAAqB,0BAAA,GAC1B,OAAA,CAAQ,sBAAA;EAAA,QAcG,qBAAA;EJk2BH;;;EAAA,QInzBG,yBAAA;EJ6kC+C;;;EIpiCvD,sBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,WACE,OAAA,CAAQ,UAAA;EJ0oCG;;;EInoCR,wBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,WACE,OAAA,CAAQ,UAAA;EJ0rCS;;;EInrCd,sBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,WACE,OAAA,CAAQ,UAAA;EJ2uCA;;;EIpuCL,uBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,WACE,OAAA,CAAQ,UAAA;EJywCR;;;EIlwCG,yBAAA,CACL,OAAA,EAAS,MAAA,mBACT,UAAA,WACE,OAAA,CAAQ,UAAA;EJm1CA;;;EIx0CL,oBAAA,CAAqB,IAAA;IAAQ,IAAA;IAAc,IAAA;IAAc,IAAA;EAAA,IAAiB,OAAA;IAC/E,IAAA;MAAQ,IAAA;MAAc,IAAA;MAAc,IAAA;IAAA;IACpC,OAAA,EAAS,UAAA;MAAa,IAAA;MAAc,IAAA;MAAc,IAAA;IAAA;EAAA;EJ83Df;;;EI90D9B,mBAAA,CAAoB,KAAA;IACzB,EAAA;IACA,QAAA;IACA,QAAA;IACA,IAAA;IACA,GAAA;IACA,SAAA;EAAA,IACG,OAAA,CAAQ,UAAA;EJvoBM;;;;;;EImrBZ,cAAA,CAAe,QAAA,UAAkB,KAAA,EAAO,SAAA,GAAY,OAAA,CAAQ,UAAA;EJ1iBzC;;;;;;;EIulBnB,kBAAA,CACL,OAAA,EAAS,YAAA,EACT,MAAA,WACE,OAAA;IAAU,OAAA,EAAS,YAAA;IAAsB,OAAA,EAAS,UAAA,CAAW,YAAA;EAAA;EJvfjD;;;;;EImjBT,iBAAA,CAAkB,OAAA,EAAS,YAAA,EAAc,MAAA,WAAiB,OAAA,CAAQ,UAAA;EJhiBvE;;;;;;;EI8kBK,sBAAA,CACL,KAAA,EAAO,wBAAA,GACL,OAAA,CAAQ,wBAAA;EJ1jBV;;;;;EIomBK,qBAAA,CAAsB,KAAA,EAAO,uBAAA,GAA0B,OAAA;EJjmBtC;;;;;EIwnBjB,uBAAA,CAAwB,KAAA,EAAO,yBAAA,GAA4B,OAAA;EJ3lBrC;EIknBtB,kBAAA,CAAmB,MAAA,EAAQ,aAAA,EAAe,KAAA,YAAiB,OAAA;EJ1lBhE;EIkmBK,oBAAA,CAAqB,MAAA,EAAQ,aAAA,GAAgB,OAAA;EAAA,QAOrC,aAAA;EJtmBX;;;;EI6nBG,eAAA,CACL,KAAA,EAAO,iBAAA,GACL,OAAA,CAAQ,KAAA;IAAQ,QAAA;IAAkB,aAAA,EAAe,wBAAA;EAAA;EJ/mB9C;;;;EIgpBA,gBAAA,CACL,KAAA,EAAO,iBAAA,GACL,OAAA,CAAQ,KAAA;IAAQ,QAAA;IAAkB,aAAA,EAAe,wBAAA;EAAA;EJ9lBP;;;EIkoB7C,QAAA,CAAS,IAAA,EAAM,UAAA;EJnmBd;;;EI2mBD,YAAA,CAAa,IAAA,EAAM,UAAA;EJxmBR;;;EI+mBX,kBAAA,CAAA,GAAsB,UAAA;EJllBrB;;;EI6lBD,2BAAA,CAAA;EJzbM;;;EIgcN,eAAA,CAAgB,IAAA;EJhcuB;;;;EIwcvC,qBAAA,CAAsB,QAAA,UAAkB,QAAA;EJjYvC;;;EIwYD,uBAAA,CAAwB,QAAA;EJrYrB;;;EI4YH,qBAAA,CAAsB,QAAA;EJrShB;;;EI4SN,yBAAA,CAA0B,QAAA,WAAmB,KAAA;IAAQ,QAAA;EAAA;EJvSlD;;;;;;EIkTH,gBAAA,CAAiB,QAAA,WAAmB,KAAA;IAAQ,QAAA;EAAA;EJ7H9B;;;;;;;;;;;;EI8IR,mBAAA,CACL,QAAA,UACA,KAAA,YACE,OAAA;IAAU,MAAA;IAAiB,QAAA;IAAkB,KAAA,GAAQ,KAAA;IAAO,QAAA;EAAA;AAAA;;;;iBA4BhD,kBAAA,CACf,OAAA,EAAS,cAAA,IACT,cAAA,GAAiB,2BAAA,GACf,YAAA;;;;;;AP7tCH;;;;;cQrLa,aAAA;EAAA,QACJ,QAAA;cAEI,QAAA,EAAU,YAAA;ERmLhB;;;;;;;EQxKN,WAAA,CAAY,QAAA,EAAU,YAAA;;APrDvB;;;;;;;;EOkEO,IAAA,CAAK,OAAA,EAAS,YAAA,EAAc,MAAA,WAAiB,OAAA;;;;UA4BrC,SAAA;ENhHa;;;;AAEf;;;EM6MZ,WAAA,CAAA;AAAA;;;UCvMgB,sBAAA;EAChB,OAAA;EACA,CAAA;EACA,GAAA;EACA,EAAA;EACA,UAAA;AAAA;AAAA,cAGY,4BAAA,SAAqC,KAAA;EAAA,SAC/B,IAAA;EAAA,SACT,IAAA;cAMG,IAAA,EAAM,4BAAA,UAAsC,OAAA;AAAA;AAAA,iBAMzC,wBAAA,CAAyB,KAAA,YAAiB,KAAA,IAAS,sBAAA;AAAA,iBAwC7C,oBAAA,CACrB,QAAA,UACA,GAAA,UACA,KAAA,UACA,IAAA,GAAO,mBAAA,YACL,OAAA,CAAQ,sBAAA;AAAA,iBA0GW,wBAAA,aAAA,CACrB,QAAA,UACA,GAAA,UACA,KAAA,WACA,MAAA,EAAQ,MAAA,SAAe,YAAA,GACvB,IAAA,GAAO,mBAAA,WACP,QAAA,IAAY,GAAA,UAAa,KAAA,oBACvB,OAAA,CAAQ,CAAA;AAAA,iBA4BK,oBAAA,CACf,WAAA,EAAa,iBAAA,EACb,QAAA,UACA,MAAA,GAAQ,MAAA,SAAe,YAAA,GACvB,IAAA,GAAO,mBAAA,WACP,QAAA,IAAY,GAAA,UAAa,KAAA,oBACvB,cAAA;;;iBC5Na,mBAAA,CACf,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,aAAA;EAAkB,IAAA,GAAO,QAAA;EAAU,SAAA;AAAA,IACjC,aAAA;;;iBCyWa,kBAAA,CAAmB,EAAA,EAAI,MAAA,CAAO,QAAA,IAAY,YAAA;AAAA,iBA8E1C,mBAAA,CACf,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,QAAA,IACC,EAAA,UACA,MAAA,EAAQ,mBAAA,EACR,cAAA,EAAgB,mBAAA,KACZ,OAAA,CAAQ,aAAA,IACX,aAAA;AAAA,cAwBU,mBAAA,SAA4B,KAAA;EAAA,SAI9B,IAAA;EAAA,SAHQ,IAAA;cAGR,IAAA,UACT,OAAA;AAAA;AAAA,iBA0Ec,oBAAA,CAAqB,EAAA,EAAI,MAAA,CAAO,QAAA,IAAY,cAAA;AAAA,iBAC5C,oBAAA,CAAqB,EAAA,EAAI,MAAA,CAAO,QAAA,GAAW,QAAA,SAAiB,uBAAA;;;;;;KAgMhE,iBAAA,SAA0B,OAAA,eAAsB,OAAA;;;;;;AVztB5D;;;;iBUwuBgB,4BAAA,CACf,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,kBAAA,GAAqB,iBAAA,EACrB,aAAA;EAAkB,IAAA,GAAO,QAAA;EAAU,SAAA;AAAA,GACnC,aAAA,IAAiB,IAAA;EAChB,UAAA;EACA,KAAA,EAAO,iBAAA;EACP,OAAA,GAAU,oBAAA;AAAA,MACL,OAAA,CAAQ,aAAA,IACZ,sBAAA;ATrwBwC;;;AAAA,iBSm6B3B,iBAAA,CAAkB,EAAA,EAAI,MAAA,CAAO,QAAA,IAAY,WAAA;ATx3BzD;;;;;AAAA,iBS8mCgB,gBAAA,CACf,QAAA,UACA,YAAA,YACA,SAAA,UAAkB,KAAA,GAChB,UAAA;;;;;;iBA0Ea,4BAAA,CACf,QAAA,UACA,SAAA,UAAkB,KAAA,GAChB,UAAA;;ARp7BH;;UQ+iCiB,eAAA;ER3iCI;EQ6iCpB,QAAA;ER5iCqC;EQ8iCrC,OAAA;ERtiCiD;EQwiCjD,MAAA;ERv6BuE;EQy6BvE,aAAA;AAAA;AAAA,UAyGgB,2BAAA;EAChB,EAAA,EAAI,MAAA,CAAO,QAAA;EACX,kBAAA,GAAqB,iBAAA;EACrB,aAAA,GAAgB,2BAAA;EAChB,cAAA,GAAiB,sBAAA;ERxiB0D;;;;;;;;;EQkjB3E,KAAA,SAAc,MAAA,CAAO,QAAA;ERjHd;;;;EQsHP,OAAA,GAAU,OAAA;ERsDC;;;;;;EQ/CX,YAAA,IACC,QAAA,UACA,WAAA,aACI,OAAA;IAAU,SAAA;IAAmB,OAAA;EAAA;ERoY2B;;;;EQ/X7D,QAAA,GAAW,eAAA;ERyeS;;;;EQpepB,cAAA;ER8hBG;EQ5hBH,GAAA,SAAY,IAAA;ERslBD;;;;EQjlBX,aAAA,GAAgB,aAAA;ER8oBwD;;;;;;EQvoBxE,mBAAA;EACA,eAAA,IACC,QAAA,UACA,EAAA,UACA,MAAA,EAAQ,mBAAA,EACR,cAAA,EAAgB,mBAAA,KACZ,OAAA,CAAQ,aAAA;AAAA;AAAA,UAGG,sBAAA;ERozBL;EQlzBX,KAAA,EACC,QAAA,UACA,YAAA,UACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA;ER0jC1B;EQvjCpB,KAAA,CAAM,QAAA,UAAkB,YAAA,WAAuB,KAAA,aAAkB,OAAA;EACjE,YAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,WACE,OAAA,CAAQ,oBAAA;EACX,OAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,UACA,OAAA;IAAW,IAAA;EAAA,GACX,YAAA,WACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA,SAC3C,OAAA,CAAQ,oBAAA;EACX,SAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,UACA,OAAA;IAAW,IAAA;EAAA,GACX,YAAA,WACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA,SAC3C,OAAA,CAAQ,oBAAA;EACX,QAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,UACA,OAAA;IAAW,WAAA;IAAqB,IAAA;EAAA,GAChC,YAAA,WACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA,SAC3C,OAAA,CAAQ,oBAAA;EACX,UAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,UACA,OAAA;IAAW,IAAA;EAAA,GACX,YAAA,WACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA,SAC3C,OAAA,CAAQ,oBAAA;EACX,mBAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,WACE,OAAA,CAAQ,oBAAA;EACX,OAAA,CACC,QAAA,UACA,UAAA,UACA,EAAA,UACA,OAAA;IAAW,IAAA;EAAA,GACX,YAAA,WACA,sBAAA,IAA0B,IAAA,eAAmB,OAAA,SAC3C,OAAA,CAAQ,oBAAA;AAAA;;;;;;;UC5jDK,cAAA;EZqDb;EYnDH,KAAA;EZ4F0B;EY1F1B,QAAA;EZ0F0B;EYxF1B,WAAA;EZ+FA;EY7FA,UAAA;AAAA;;;;;UAOgB,iBAAA;EZ+M0B;EY7M1C,GAAA,CAAI,IAAA,WAAe,OAAA;EZ8Mb;EY5MN,MAAA,CAAO,IAAA,WAAe,OAAA;AAAA;;;;;UAON,mBAAA;EAChB,EAAA;EACA,EAAA;EACA,OAAA;EACA,OAAA;EACA,IAAA;EACA,IAAA;AAAA;;;;;;;;KAUW,wBAAA,IACX,OAAA,EAAS,mBAAA,EACT,QAAA,aACI,OAAA;AAAA,KAEO,8BAAA,IACX,QAAA,UACA,EAAA,UACA,MAAA,EAAQ,mBAAA,EACR,cAAA,EAAgB,mBAAA,KACZ,OAAA,CAAQ,aAAA;AAAA,KAED,4BAAA,IACX,QAAA,UACA,UAAA,UACA,IAAA,EAAM,iBAAA,EACN,OAAA,GAAU,oBAAA;EACT,UAAA;EACA,aAAA;AAAA,MAEG,OAAA,CAAQ,aAAA;AAAA,KAED,wBAAA,UAAkC,KAAA;;;AV9EjC;UUmFI,cAAA;;EAEhB,OAAA,GAAU,iBAAA;EVjFV;EUmFA,EAAA,EAAI,MAAA,CAAO,QAAA;EVlFH;;;;;EUwFR,kBAAA,SAA2B,OAAA,eAAsB,OAAA;EVtDlB;EUwD/B,aAAA,GAAgB,uBAAA;EAChB,cAAA,GAAiB,sBAAA;EVzD6B;EU2D9C,GAAA,SAAY,IAAA;EV3DyB;EU6DrC,MAAA,GAAS,cAAA;EV7DyB;EU+DlC,QAAA;IACC,IAAA;IACA,GAAA;IACA,MAAA;IACA,aAAA;EAAA;;EAGD,SAAA,GAAY,wBAAA;EACZ,eAAA,GAAkB,8BAAA;;EAElB,SAAA,GAAY,wBAAA;ET/E6C;AAiR1D;;;ES7LC,YAAA;IACC,MAAA,CAAO,OAAA;MAAW,GAAA;MAAa,IAAA,EAAM,UAAA;MAAY,WAAA;IAAA,IAAwB,OAAA;IACzE,QAAA,CAAS,GAAA,WAAc,OAAA;MACtB,IAAA,EAAM,cAAA,CAAe,UAAA;MACrB,WAAA;MACA,IAAA;IAAA;IAED,MAAA,CAAO,GAAA,WAAc,OAAA;EAAA;ET4bnB;ESzbH,UAAA;AAAA;;;;;;;;UAUgB,uBAAA;ETkkBuD;EAAA,SShkB9D,EAAA;ETkmBE;;;;;;;ESzlBX,UAAA,CAAW,QAAA,UAAkB,KAAA,YAAiB,OAAA;ET0xBqB;;;;;;;;EShxBnE,WAAA,CACC,SAAA,UACA,KAAA,WACA,OAAA,EAAS,iBAAA,EACT,OAAA,GAAU,wBAAA,GACR,OAAA;ET4sCI;;;;EStsCP,SAAA,EAAW,MAAA;ETk3CA;;;;ES52CX,SAAA,IAAa,OAAA;AAAA;AAAA,UAGG,wBAAA;EAChB,sBAAA,IAA0B,IAAA,eAAmB,OAAA;AAAA;;;;;UAO7B,iBAAA;EAChB,GAAA;EACA,MAAA;EACA,OAAA,EAAS,MAAA;ETiyDN;ES/xDH,IAAA,EAAM,WAAA;ETw1DK;ESt1DX,EAAA,GAAK,eAAA;ET84DS;;;;ESz4Dd,IAAA,GAAO,QAAA;AAAA;AAAA,cAGF,+BAAA;EAAA;;;;;;;;;;;;;;;;;KAmBM,qBAAA,gBAAqC,+BAAA;AAAA,UAEhC,wBAAA;EAChB,IAAA,EAAM,qBAAA;EACN,OAAA;EACA,MAAA;AAAA;AAAA,UAGgB,yBAAA;EAChB,yBAAA;EACA,KAAA,EAAO,wBAAA;AAAA;AAAA,iBAWQ,2BAAA,CAA4B,KAAA,YAAiB,wBAAA;AAAA,iBAiB7C,uBAAA,CACf,IAAA,EAAM,qBAAA,GACJ,KAAA,GAAQ,wBAAA;AAAA,iBAQK,+BAAA,CAAgC,KAAA,YAAiB,yBAAA;AAAA,iBAKjD,4BAAA,CAA6B,KAAA,YAAiB,yBAAA;;;;;UAU7C,aAAA;EToCyB;;;;ES/BzC,WAAA;ETgKqD;;;;;;ESxJrD,SAAA;ETgNsE;;;;;;;ESvMtE,iBAAA;ETqQC;;;;;;;;ES3PD,IAAA,CAAK,QAAA,EAAU,cAAA,EAAgB,IAAA,WAAe,OAAA,CAAQ,uBAAA;ETkRrD;;;;;ES3QD,YAAA,CAAa,QAAA,EAAU,wBAAA;EACvB,kBAAA,EAAoB,QAAA,EAAU,8BAAA;EAC9B,gBAAA,EAAkB,QAAA,EAAU,4BAAA;EAC5B,iBAAA,EAAmB,QAAA,EAAU,sBAAA;ETuS1B;ESpSH,iBAAA,EAAmB,QAAA;EToSS;;;;ES9R5B,YAAA,IAAgB,OAAA;AAAA;;;;;cAYJ,uBAAA,SAAgC,KAAA;cAChC,QAAA,UAAkB,MAAA;AAAA;;;;;;;;;;;;;KAkBnB,oBAAA,IAAwB,OAAA,EAAS,cAAA,KAAmB,aAAA;;;;;;;KC/VpD,gBAAA,IAAoB,QAAA,UAAkB,KAAA,EAAO,SAAA,KAAc,OAAA;;;;KAK3D,YAAA;;;;;;;;cAWC,YAAA;EAAA,QAaH,cAAA;EAAA,iBACS,GAAA;EbmFP;AA6GZ;;;;;;;EA7GY,iBaxFM,SAAA;cAGhB,EAAA,EAAI,MAAA,CAAO,QAAA,WAAmB,MAAA,CAAO,QAAA,IAC7B,cAAA,EAAgB,gBAAA,EACP,GAAA,SAAW,IAAA;EAAA,YAKjB,EAAA,CAAA;Eb6LV;;;;;;;AC9NH;EY6CO,IAAA,CAAA,GAAQ,OAAA;;;;;EA2IR,iBAAA,CAAA,GAAqB,OAAA;EZrLV;;;;EYsMX,cAAA,CAAA,GAAkB,OAAA;AAAA;;;;;cAiBZ,cAAA,YAA0B,UAAA;EAAA,QAE7B,EAAA;EAAA,QACA,QAAA;EAAA,QACA,UAAA;EAAA,iBACS,GAAA;cAHT,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,QAAA,UACA,UAAA,EAAY,YAAA,EACH,GAAA,SAAW,IAAA;EAGvB,QAAA,CACL,IAAA,UACA,IAAA;IAAQ,QAAA;IAAkB,IAAA,GAAO,MAAA;EAAA,IAC/B,OAAA;EA2BG,MAAA,CAAO,IAAA,WAAe,OAAA;EAStB,IAAA,CAAA,GAAQ,OAAA,CAAQ,YAAA;AAAA;;;;;;iBChMP,kBAAA,CAAmB,EAAA,EAAI,MAAA,CAAO,QAAA,IAAY,YAAA;;;cC9F7C,+BAAA;AAAA,cACA,2BAAA;AAAA,iBAMG,iBAAA,CAAkB,IAAA,EAAM,SAAA,GAAsB,WAAA;AAAA,iBAkExC,oBAAA,CACrB,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,OAAA,EAAS,IAAA,CAAK,OAAA,2BACd,EAAA,UACA,OAAA;EAAY,QAAA;AAAA,IACV,OAAA,CAAQ,UAAA;AAAA,iBAyBW,yBAAA,CACrB,EAAA,EAAI,MAAA,CAAO,QAAA,GACX,EAAA,UACA,KAAA,EAAO,kBAAA,GACL,OAAA,CAAQ,WAAA;AAAA,iBASK,6BAAA,CAA8B,KAAA,YAAiB,kBAAA;;;;;AfH/D;;;;;;;;;;;;AAgIA;;;;;cgB9Ma,yBAAA,SAAkC,KAAA;EAAA,SACrC,IAAA;EAAA,SACA,SAAA;EhB6MH;EAAA,SgB3MG,QAAA;cAEG,OAAA,UAAiB,OAAA;IAAY,KAAA;IAAiB,QAAA;EAAA;AAAA"}
@@ -1,449 +0,0 @@
1
- import { t as TransferError } from "./errors-CjXd1LgH.mjs";
2
- import { a as parseCanonicalJson, n as canonicalJson, o as TRANSFER_LIMITS, r as compareUtf16, t as CanonicalJsonError } from "./canonical-CAecl1UQ.mjs";
3
- import { b as summarizeSchemaIssue, h as portableIdSchema, i as RECORD_KINDS, l as compareIds } from "./kinds-D1A-00-F.mjs";
4
- import { a as parsePackagePath, n as indexChunkPath, t as MANIFEST_PATH } from "./paths-DkS74lBM.mjs";
5
- import { i as exportTransformationSchema } from "./transformations-BtQdvyly.mjs";
6
- import { i as SUPPORTED_FORMAT_VERSIONS, n as SITE_PACKAGE_FORMAT_VERSION, r as SITE_PACKAGE_PROFILE, t as SITE_PACKAGE_FORMAT } from "./version-CseoDDOd.mjs";
7
- import { z } from "zod";
8
- import { createTarDecoder, createTarPacker } from "modern-tar";
9
-
10
- //#region src/transfer/format/features.ts
11
- /**
12
- * Site package feature registry.
13
- *
14
- * `manifest.features` lists every feature the package uses (sorted);
15
- * `manifest.requiredFeatures` is the subset a reader must understand to import
16
- * it. Readers reject a package whose required features include one they do not
17
- * know. Every v1 feature is required when present except `comment_reactions`.
18
- */
19
- const SITE_PACKAGE_FEATURES = [
20
- "bylines",
21
- "comment_reactions",
22
- "comments",
23
- "content",
24
- "i18n",
25
- "media",
26
- "menus",
27
- "principals",
28
- "redirects",
29
- "relations",
30
- "revisions",
31
- "schema",
32
- "sections",
33
- "seo",
34
- "settings",
35
- "taxonomies",
36
- "trash",
37
- "widgets"
38
- ];
39
- const OPTIONAL_FEATURES = new Set(["comment_reactions"]);
40
- const FEATURE_SET = new Set(SITE_PACKAGE_FEATURES);
41
- function isSitePackageFeature(value) {
42
- return FEATURE_SET.has(value);
43
- }
44
- /**
45
- * The feature a record kind belongs to. A package may only contain records of
46
- * a kind whose feature it declares. `i18n` (more than one locale in use) and
47
- * `trash` (entries with `deletedAt`) have no kind of their own.
48
- */
49
- const KIND_FEATURE = Object.freeze({
50
- principal: "principals",
51
- block_type: "schema",
52
- block_type_version: "schema",
53
- collection: "schema",
54
- field: "schema",
55
- taxonomy_def: "taxonomies",
56
- relation: "relations",
57
- byline_field: "bylines",
58
- media_folder: "media",
59
- media: "media",
60
- term: "taxonomies",
61
- byline: "bylines",
62
- byline_field_value: "bylines",
63
- byline_field_group_value: "bylines",
64
- revision: "revisions",
65
- entry: "content",
66
- content_term: "taxonomies",
67
- content_byline: "bylines",
68
- content_reference: "relations",
69
- seo: "seo",
70
- menu: "menus",
71
- menu_item: "menus",
72
- widget_area: "widgets",
73
- widget: "widgets",
74
- section: "sections",
75
- redirect: "redirects",
76
- comment: "comments",
77
- comment_reaction: "comment_reactions",
78
- setting: "settings"
79
- });
80
- /** Required features derived from a feature list (sorted). */
81
- function requiredFeaturesFor(features) {
82
- return [...new Set(features)].filter((feature) => !OPTIONAL_FEATURES.has(feature)).toSorted(compareUtf16);
83
- }
84
- /** Required features this reader does not understand (empty when supported). */
85
- function unsupportedRequiredFeatures(requiredFeatures) {
86
- return requiredFeatures.filter((feature) => !isSitePackageFeature(feature));
87
- }
88
-
89
- //#endregion
90
- //#region src/transfer/format/manifest.ts
91
- /**
92
- * The package manifest and its file index.
93
- *
94
- * `manifest.json` is small: identity, features, locales, per-kind counts,
95
- * totals, export transformations, and the list of index chunks with their
96
- * sizes and digests. The complete file list (every record chunk and media
97
- * blob with size and SHA-256) lives in the index chunks `index/<seq>.ndjson`,
98
- * one {@link PackageFileEntry} per line, sorted by path across chunks. Because
99
- * the manifest pins each index chunk's digest and each index entry pins its
100
- * file's digest, `packageDigest` covers every byte of the package.
101
- */
102
- const sha256Hex = z.string().regex(/^[0-9a-f]{64}$/);
103
- const count = z.number().int().nonnegative();
104
- const featureName = z.string().min(1).max(64).regex(/^[a-z][a-z0-9_]*$/);
105
- const localeSchema = z.string().min(1).max(64);
106
- function isSortedUnique(values) {
107
- return values.every((value, index) => index === 0 || compareIds(values[index - 1] ?? "", value) < 0);
108
- }
109
- const indexChunkRefSchema = z.strictObject({
110
- path: z.string(),
111
- bytes: count.max(TRANSFER_LIMITS.chunkBytes),
112
- sha256: sha256Hex,
113
- entries: count.max(TRANSFER_LIMITS.chunkRecords)
114
- });
115
- const recordKindSummarySchema = z.strictObject({
116
- count: count.min(1),
117
- chunks: count.min(1)
118
- });
119
- const sitePackageManifestSchema = z.strictObject({
120
- format: z.literal(SITE_PACKAGE_FORMAT),
121
- formatVersion: z.literal(SITE_PACKAGE_FORMAT_VERSION),
122
- packageId: portableIdSchema,
123
- originSiteId: portableIdSchema,
124
- createdAt: z.string().min(1).max(64),
125
- createdByEmDashVersion: z.string().min(1).max(128),
126
- profile: z.literal(SITE_PACKAGE_PROFILE),
127
- features: z.array(featureName).max(256),
128
- requiredFeatures: z.array(featureName).max(256),
129
- locales: z.strictObject({
130
- default: localeSchema,
131
- used: z.array(localeSchema).max(1e3)
132
- }),
133
- records: z.partialRecord(z.enum(RECORD_KINDS), recordKindSummarySchema),
134
- media: z.strictObject({
135
- count,
136
- totalBytes: count
137
- }),
138
- files: z.strictObject({
139
- count: count.max(TRANSFER_LIMITS.totalFiles),
140
- totalBytes: count
141
- }),
142
- index: z.array(indexChunkRefSchema).max(TRANSFER_LIMITS.indexChunks),
143
- transformations: z.array(exportTransformationSchema).max(RECORD_KINDS.length * 8),
144
- fence: z.strictObject({ attempts: z.number().int().min(1).max(TRANSFER_LIMITS.exportFenceAttempts) })
145
- }).superRefine((manifest, ctx) => {
146
- const issue = (path, message) => ctx.addIssue({
147
- code: "custom",
148
- path,
149
- message
150
- });
151
- if (!isSortedUnique(manifest.features)) issue(["features"], "Features must be sorted and unique");
152
- if (!isSortedUnique(manifest.requiredFeatures)) issue(["requiredFeatures"], "Required features must be sorted and unique");
153
- const features = new Set(manifest.features);
154
- for (const feature of manifest.requiredFeatures) if (!features.has(feature)) issue(["requiredFeatures"], `${feature} is not in features`);
155
- for (const feature of manifest.features) if (isSitePackageFeature(feature) && !OPTIONAL_FEATURES.has(feature) && !manifest.requiredFeatures.includes(feature)) issue(["requiredFeatures"], `${feature} must be required`);
156
- if (!isSortedUnique(manifest.locales.used)) issue(["locales", "used"], "Locales must be sorted and unique");
157
- if (manifest.locales.used.length > 0 && !manifest.locales.used.includes(manifest.locales.default)) issue(["locales", "default"], "Default locale must be in use");
158
- let totalRecords = 0;
159
- for (const kind of RECORD_KINDS) {
160
- const summary = manifest.records[kind];
161
- if (!summary) continue;
162
- totalRecords += summary.count;
163
- if (!features.has(KIND_FEATURE[kind])) issue(["records", kind], `Kind ${kind} requires feature ${KIND_FEATURE[kind]}`);
164
- if (summary.chunks > summary.count || summary.count > summary.chunks * TRANSFER_LIMITS.chunkRecords) issue(["records", kind], "Chunk count does not fit the record count");
165
- }
166
- if (totalRecords > TRANSFER_LIMITS.totalRecords) issue(["records"], "Too many records");
167
- if (manifest.media.count > 0 && !features.has("media")) issue(["media"], "Media blobs require feature media");
168
- if (manifest.media.count > manifest.files.count) issue(["media"], "More blobs than files");
169
- if (manifest.media.totalBytes > manifest.files.totalBytes) issue(["media"], "Blob bytes exceed file bytes");
170
- manifest.index.forEach((chunk, seq) => {
171
- if (chunk.path !== indexChunkPath(seq)) issue([
172
- "index",
173
- seq,
174
- "path"
175
- ], "Unexpected index path");
176
- });
177
- if (manifest.index.reduce((sum, chunk) => sum + chunk.entries, 0) !== manifest.files.count) issue(["index"], "Index entries do not match the file count");
178
- if (!isSortedUnique(manifest.transformations.map((t) => `${t.code}\u0000${t.kind}`))) issue(["transformations"], "Transformations must be sorted by code and kind and unique");
179
- });
180
- /** One line of an index chunk. `records` is present exactly for record chunks. */
181
- const packageFileEntrySchema = z.strictObject({
182
- path: z.string().min(1).max(256),
183
- bytes: count,
184
- sha256: sha256Hex,
185
- records: count.min(1).max(TRANSFER_LIMITS.chunkRecords).optional()
186
- }).superRefine((entry, ctx) => {
187
- const parsed = parsePackagePath(entry.path);
188
- if (!parsed || parsed.type !== "records" && parsed.type !== "media") {
189
- ctx.addIssue({
190
- code: "custom",
191
- path: ["path"],
192
- message: "Invalid package file path"
193
- });
194
- return;
195
- }
196
- if (parsed.type === "records") {
197
- if (entry.records === void 0) ctx.addIssue({
198
- code: "custom",
199
- path: ["records"],
200
- message: "Record count required"
201
- });
202
- if (entry.bytes > TRANSFER_LIMITS.chunkBytes) ctx.addIssue({
203
- code: "custom",
204
- path: ["bytes"],
205
- message: "Chunk too large"
206
- });
207
- } else {
208
- if (entry.records !== void 0) ctx.addIssue({
209
- code: "custom",
210
- path: ["records"],
211
- message: "Blobs have no records"
212
- });
213
- if (entry.sha256 !== parsed.sha256) ctx.addIssue({
214
- code: "custom",
215
- path: ["sha256"],
216
- message: "Blob path must be its digest"
217
- });
218
- }
219
- });
220
- /**
221
- * Parse and validate `manifest.json` bytes. Throws a {@link TransferError}:
222
- * `TRANSFER_LIMIT_EXCEEDED` when too large, `TRANSFER_UNSUPPORTED_FORMAT` for
223
- * another format or version, `TRANSFER_UNSUPPORTED_FEATURE` for an unknown
224
- * required feature, and `TRANSFER_MANIFEST_INVALID` otherwise.
225
- */
226
- function parseManifest(input) {
227
- if ((typeof input === "string" ? new TextEncoder().encode(input).byteLength : input.byteLength) > TRANSFER_LIMITS.manifestBytes) throw new TransferError("TRANSFER_LIMIT_EXCEEDED", "Manifest is too large", { detail: { limit: TRANSFER_LIMITS.manifestBytes } });
228
- const text = typeof input === "string" ? input : decodeUtf8(input, "TRANSFER_MANIFEST_INVALID");
229
- let raw;
230
- try {
231
- raw = parseCanonicalJson(text);
232
- } catch (error) {
233
- throw new TransferError("TRANSFER_MANIFEST_INVALID", "Manifest is not canonical JSON", { detail: { reason: error instanceof CanonicalJsonError ? error.message : "invalid" } });
234
- }
235
- const envelope = z.looseObject({
236
- format: z.unknown(),
237
- formatVersion: z.unknown(),
238
- requiredFeatures: z.unknown()
239
- }).safeParse(raw);
240
- if (!envelope.success || envelope.data.format !== SITE_PACKAGE_FORMAT || typeof envelope.data.formatVersion !== "string" || !SUPPORTED_FORMAT_VERSIONS.includes(envelope.data.formatVersion)) throw new TransferError("TRANSFER_UNSUPPORTED_FORMAT", "Unsupported package format or version");
241
- if (Array.isArray(envelope.data.requiredFeatures)) {
242
- const unsupported = unsupportedRequiredFeatures(envelope.data.requiredFeatures.filter((value) => typeof value === "string"));
243
- if (unsupported.length > 0) throw new TransferError("TRANSFER_UNSUPPORTED_FEATURE", "Package requires unsupported features", { detail: { features: unsupported.slice(0, 20).join(",") } });
244
- }
245
- const result = sitePackageManifestSchema.safeParse(raw);
246
- if (!result.success) {
247
- const first = result.error.issues[0];
248
- const summary = first ? summarizeSchemaIssue(first, sitePackageManifestSchema.shape) : null;
249
- throw new TransferError("TRANSFER_MANIFEST_INVALID", "Manifest failed validation", { detail: {
250
- path: summary?.path ?? "",
251
- reason: summary?.message ?? "invalid",
252
- issues: result.error.issues.length
253
- } });
254
- }
255
- return result.data;
256
- }
257
- function serializeManifest(manifest) {
258
- return canonicalJson(manifest);
259
- }
260
- /** Parse one index line (canonical JSON, without its newline). */
261
- function parseIndexLine(line) {
262
- let raw;
263
- try {
264
- raw = parseCanonicalJson(line);
265
- } catch (error) {
266
- throw new TransferError("TRANSFER_MANIFEST_INVALID", "Index line is not canonical JSON", { detail: { reason: error instanceof CanonicalJsonError ? error.message : "invalid" } });
267
- }
268
- const result = packageFileEntrySchema.safeParse(raw);
269
- if (!result.success) {
270
- const first = result.error.issues[0];
271
- throw new TransferError("TRANSFER_MANIFEST_INVALID", "Index line failed validation", { detail: { reason: first ? summarizeSchemaIssue(first, packageFileEntrySchema.shape).message : "invalid" } });
272
- }
273
- return result.data;
274
- }
275
- function decodeUtf8(bytes, code) {
276
- try {
277
- return new TextDecoder("utf-8", {
278
- fatal: true,
279
- ignoreBOM: true
280
- }).decode(bytes);
281
- } catch {
282
- throw new TransferError(code, "File is not valid UTF-8");
283
- }
284
- }
285
-
286
- //#endregion
287
- //#region src/transfer/container/tar.ts
288
- /**
289
- * The `.emdash` single-file container: an uncompressed tar of the package
290
- * files, `manifest.json` first. The container is transport only — the package
291
- * digest covers the manifest, which pins every file — so these helpers never
292
- * need to trust the archive: every entry must be a regular file at a valid
293
- * package path, appear once, and carry exactly its declared size.
294
- *
295
- * Runs in browsers, Node, and Workers (web streams only).
296
- */
297
- /** Upper bound on archive entries: every indexed file, the index chunks, and the manifest. */
298
- const MAX_ENTRIES = TRANSFER_LIMITS.totalFiles + TRANSFER_LIMITS.indexChunks + 1;
299
- const DIRECTORY_ENTRY_PATTERN = /^(?:index|media|records(?:\/[a-z_]+)?)\/?$/;
300
- const FIXED_MTIME = /* @__PURE__ */ new Date(0);
301
- function containerError(message, detail) {
302
- return new TransferError("TRANSFER_CONTAINER_INVALID", message, detail ? { detail } : {});
303
- }
304
- function toStream(body) {
305
- if (!(body instanceof Uint8Array)) return body;
306
- return new ReadableStream({ start(controller) {
307
- if (body.byteLength > 0) controller.enqueue(body);
308
- controller.close();
309
- } });
310
- }
311
- function sizeGuard(path, expected) {
312
- let seen = 0;
313
- return new TransformStream({
314
- transform(chunk, controller) {
315
- seen += chunk.byteLength;
316
- if (seen > expected) throw containerError("Entry is larger than declared", { path });
317
- controller.enqueue(chunk);
318
- },
319
- flush() {
320
- if (seen !== expected) throw containerError("Entry is smaller than declared", { path });
321
- }
322
- });
323
- }
324
- /**
325
- * Stream a container from package files. `manifest.json` must come first;
326
- * every path must be a valid package path and appear once, and each body must
327
- * produce exactly `bytes` bytes. Entries get a fixed mtime and mode so the
328
- * same files always produce the same archive bytes.
329
- */
330
- function packSitePackage(files) {
331
- const { readable, controller } = createTarPacker();
332
- (async () => {
333
- const seen = /* @__PURE__ */ new Set();
334
- try {
335
- for await (const file of files) {
336
- if (seen.size === 0 && file.path !== MANIFEST_PATH) throw containerError("The manifest must be the first entry");
337
- if (!parsePackagePath(file.path)) throw containerError("Invalid package path", { path: file.path });
338
- if (seen.has(file.path)) throw containerError("Duplicate package path", { path: file.path });
339
- if (seen.size >= MAX_ENTRIES) throw containerError("Too many entries");
340
- if (!Number.isSafeInteger(file.bytes) || file.bytes < 0) throw containerError("Invalid entry size", { path: file.path });
341
- seen.add(file.path);
342
- const entry = controller.add({
343
- name: file.path,
344
- size: file.bytes,
345
- type: "file",
346
- mode: 420,
347
- mtime: FIXED_MTIME
348
- });
349
- await toStream(await file.body()).pipeThrough(sizeGuard(file.path, file.bytes)).pipeTo(entry);
350
- }
351
- if (seen.size === 0) throw containerError("The manifest must be the first entry");
352
- controller.finalize();
353
- } catch (error) {
354
- controller.error(error);
355
- }
356
- })();
357
- return readable;
358
- }
359
- /**
360
- * Read a container entry by entry. `onFile` receives each file in archive
361
- * order and may read its body; an unread body is skipped. If `onFile` takes a
362
- * reader it must read the body to the end or release the lock.
363
- * Rejects symlinks, hard links, and other non-file entries; paths that are
364
- * not package paths (absolute, `..`, anything undeclared by the format);
365
- * duplicates; a first entry other than `manifest.json`; and size mismatches.
366
- * Directory entries for the package's own directories are skipped.
367
- */
368
- async function unpackSitePackage(archive, onFile, options = {}) {
369
- const seen = /* @__PURE__ */ new Set();
370
- let callbackError;
371
- const reader = archive.pipeThrough(createTarDecoder({ strict: true })).getReader();
372
- try {
373
- for (;;) {
374
- const { done, value: entry } = await reader.read();
375
- if (done) break;
376
- const { header } = entry;
377
- const type = header.type ?? "file";
378
- const name = header.name.startsWith("./") ? header.name.slice(2) : header.name;
379
- if (type === "directory" && DIRECTORY_ENTRY_PATTERN.test(name)) {
380
- await entry.body.cancel();
381
- continue;
382
- }
383
- if (type !== "file") {
384
- await entry.body.cancel();
385
- throw containerError("Container entries must be regular files", { path: name });
386
- }
387
- const parsed = parsePackagePath(name);
388
- if (!parsed) {
389
- await entry.body.cancel();
390
- throw containerError("Invalid package path", { path: name.slice(0, 256) });
391
- }
392
- if (seen.size === 0 && parsed.type !== "manifest") {
393
- await entry.body.cancel();
394
- throw containerError("The manifest must be the first entry");
395
- }
396
- if (seen.has(name)) {
397
- await entry.body.cancel();
398
- throw containerError("Duplicate package path", { path: name });
399
- }
400
- if (seen.size >= MAX_ENTRIES) {
401
- await entry.body.cancel();
402
- throw containerError("Too many entries");
403
- }
404
- const expected = options.expectedBytes?.(name);
405
- if (expected !== void 0 && expected !== header.size) {
406
- await entry.body.cancel();
407
- throw containerError("Entry size does not match the declared size", { path: name });
408
- }
409
- if (parsed.type === "manifest" && header.size > TRANSFER_LIMITS.manifestBytes) {
410
- await entry.body.cancel();
411
- throw new TransferError("TRANSFER_LIMIT_EXCEEDED", "Manifest is too large");
412
- }
413
- seen.add(name);
414
- const body = entry.body.pipeThrough(sizeGuard(name, header.size));
415
- let consumed = false;
416
- const tracked = body.pipeThrough(new TransformStream({ flush() {
417
- consumed = true;
418
- } }));
419
- try {
420
- await onFile({
421
- path: name,
422
- parsed,
423
- bytes: header.size,
424
- body: tracked
425
- });
426
- } catch (error) {
427
- callbackError = error;
428
- await tracked.cancel().catch(() => void 0);
429
- throw error;
430
- }
431
- if (!consumed) {
432
- if (tracked.locked) throw containerError("An entry body was left locked without being read", { path: name });
433
- await tracked.cancel();
434
- }
435
- }
436
- } catch (error) {
437
- await reader.cancel().catch(() => void 0);
438
- if (error === callbackError || error instanceof TransferError) throw error;
439
- throw new TransferError("TRANSFER_CONTAINER_INVALID", "Container could not be read", { cause: error });
440
- } finally {
441
- reader.releaseLock();
442
- }
443
- if (seen.size === 0) throw containerError("The manifest must be the first entry");
444
- return { files: seen.size };
445
- }
446
-
447
- //#endregion
448
- export { parseIndexLine as a, KIND_FEATURE as c, requiredFeaturesFor as d, indexChunkRefSchema as i, OPTIONAL_FEATURES as l, unpackSitePackage as n, parseManifest as o, decodeUtf8 as r, serializeManifest as s, packSitePackage as t, SITE_PACKAGE_FEATURES as u };
449
- //# sourceMappingURL=tar-BGOZARjy.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tar-BGOZARjy.mjs","names":[],"sources":["../src/transfer/format/features.ts","../src/transfer/format/manifest.ts","../src/transfer/container/tar.ts"],"sourcesContent":["/**\n * Site package feature registry.\n *\n * `manifest.features` lists every feature the package uses (sorted);\n * `manifest.requiredFeatures` is the subset a reader must understand to import\n * it. Readers reject a package whose required features include one they do not\n * know. Every v1 feature is required when present except `comment_reactions`.\n */\n\nimport { compareUtf16 } from \"./canonical.js\";\nimport type { RecordKind } from \"./kinds.js\";\n\nexport const SITE_PACKAGE_FEATURES = [\n\t\"bylines\",\n\t\"comment_reactions\",\n\t\"comments\",\n\t\"content\",\n\t\"i18n\",\n\t\"media\",\n\t\"menus\",\n\t\"principals\",\n\t\"redirects\",\n\t\"relations\",\n\t\"revisions\",\n\t\"schema\",\n\t\"sections\",\n\t\"seo\",\n\t\"settings\",\n\t\"taxonomies\",\n\t\"trash\",\n\t\"widgets\",\n] as const;\n\nexport type SitePackageFeature = (typeof SITE_PACKAGE_FEATURES)[number];\n\nexport const OPTIONAL_FEATURES: ReadonlySet<SitePackageFeature> = new Set([\"comment_reactions\"]);\n\nconst FEATURE_SET: ReadonlySet<string> = new Set(SITE_PACKAGE_FEATURES);\n\nexport function isSitePackageFeature(value: string): value is SitePackageFeature {\n\treturn FEATURE_SET.has(value);\n}\n\n/**\n * The feature a record kind belongs to. A package may only contain records of\n * a kind whose feature it declares. `i18n` (more than one locale in use) and\n * `trash` (entries with `deletedAt`) have no kind of their own.\n */\nexport const KIND_FEATURE: Readonly<Record<RecordKind, SitePackageFeature>> = Object.freeze({\n\tprincipal: \"principals\",\n\tblock_type: \"schema\",\n\tblock_type_version: \"schema\",\n\tcollection: \"schema\",\n\tfield: \"schema\",\n\ttaxonomy_def: \"taxonomies\",\n\trelation: \"relations\",\n\tbyline_field: \"bylines\",\n\tmedia_folder: \"media\",\n\tmedia: \"media\",\n\tterm: \"taxonomies\",\n\tbyline: \"bylines\",\n\tbyline_field_value: \"bylines\",\n\tbyline_field_group_value: \"bylines\",\n\trevision: \"revisions\",\n\tentry: \"content\",\n\tcontent_term: \"taxonomies\",\n\tcontent_byline: \"bylines\",\n\tcontent_reference: \"relations\",\n\tseo: \"seo\",\n\tmenu: \"menus\",\n\tmenu_item: \"menus\",\n\twidget_area: \"widgets\",\n\twidget: \"widgets\",\n\tsection: \"sections\",\n\tredirect: \"redirects\",\n\tcomment: \"comments\",\n\tcomment_reaction: \"comment_reactions\",\n\tsetting: \"settings\",\n});\n\n/** Required features derived from a feature list (sorted). */\nexport function requiredFeaturesFor(features: readonly SitePackageFeature[]): SitePackageFeature[] {\n\treturn [...new Set(features)]\n\t\t.filter((feature) => !OPTIONAL_FEATURES.has(feature))\n\t\t.toSorted(compareUtf16);\n}\n\n/** Required features this reader does not understand (empty when supported). */\nexport function unsupportedRequiredFeatures(requiredFeatures: readonly string[]): string[] {\n\treturn requiredFeatures.filter((feature) => !isSitePackageFeature(feature));\n}\n","/**\n * The package manifest and its file index.\n *\n * `manifest.json` is small: identity, features, locales, per-kind counts,\n * totals, export transformations, and the list of index chunks with their\n * sizes and digests. The complete file list (every record chunk and media\n * blob with size and SHA-256) lives in the index chunks `index/<seq>.ndjson`,\n * one {@link PackageFileEntry} per line, sorted by path across chunks. Because\n * the manifest pins each index chunk's digest and each index entry pins its\n * file's digest, `packageDigest` covers every byte of the package.\n */\n\nimport { z } from \"zod\";\n\nimport { TransferError } from \"../errors.js\";\nimport { canonicalJson, CanonicalJsonError, parseCanonicalJson } from \"./canonical.js\";\nimport {\n\tisSitePackageFeature,\n\tKIND_FEATURE,\n\tOPTIONAL_FEATURES,\n\tunsupportedRequiredFeatures,\n} from \"./features.js\";\nimport { summarizeSchemaIssue } from \"./issues.js\";\nimport { compareIds, portableIdSchema, RECORD_KINDS } from \"./kinds.js\";\nimport { TRANSFER_LIMITS } from \"./limits.js\";\nimport { indexChunkPath, parsePackagePath } from \"./paths.js\";\nimport { exportTransformationSchema } from \"./transformations.js\";\nimport {\n\tSITE_PACKAGE_FORMAT,\n\tSITE_PACKAGE_FORMAT_VERSION,\n\tSITE_PACKAGE_PROFILE,\n\tSUPPORTED_FORMAT_VERSIONS,\n} from \"./version.js\";\n\nconst sha256Hex = z.string().regex(/^[0-9a-f]{64}$/);\nconst count = z.number().int().nonnegative();\nconst featureName = z\n\t.string()\n\t.min(1)\n\t.max(64)\n\t.regex(/^[a-z][a-z0-9_]*$/);\nconst localeSchema = z.string().min(1).max(64);\n\nfunction isSortedUnique(values: readonly string[]): boolean {\n\treturn values.every(\n\t\t(value, index) => index === 0 || compareIds(values[index - 1] ?? \"\", value) < 0,\n\t);\n}\n\nexport const indexChunkRefSchema = z.strictObject({\n\tpath: z.string(),\n\tbytes: count.max(TRANSFER_LIMITS.chunkBytes),\n\tsha256: sha256Hex,\n\tentries: count.max(TRANSFER_LIMITS.chunkRecords),\n});\n\nexport type IndexChunkRef = z.infer<typeof indexChunkRefSchema>;\n\nexport const recordKindSummarySchema = z.strictObject({\n\tcount: count.min(1),\n\tchunks: count.min(1),\n});\n\nexport const sitePackageManifestSchema = z\n\t.strictObject({\n\t\tformat: z.literal(SITE_PACKAGE_FORMAT),\n\t\tformatVersion: z.literal(SITE_PACKAGE_FORMAT_VERSION),\n\t\tpackageId: portableIdSchema,\n\t\toriginSiteId: portableIdSchema,\n\t\tcreatedAt: z.string().min(1).max(64),\n\t\tcreatedByEmDashVersion: z.string().min(1).max(128),\n\t\tprofile: z.literal(SITE_PACKAGE_PROFILE),\n\t\tfeatures: z.array(featureName).max(256),\n\t\trequiredFeatures: z.array(featureName).max(256),\n\t\tlocales: z.strictObject({\n\t\t\tdefault: localeSchema,\n\t\t\tused: z.array(localeSchema).max(1000),\n\t\t}),\n\t\trecords: z.partialRecord(z.enum(RECORD_KINDS), recordKindSummarySchema),\n\t\tmedia: z.strictObject({ count, totalBytes: count }),\n\t\tfiles: z.strictObject({ count: count.max(TRANSFER_LIMITS.totalFiles), totalBytes: count }),\n\t\tindex: z.array(indexChunkRefSchema).max(TRANSFER_LIMITS.indexChunks),\n\t\ttransformations: z.array(exportTransformationSchema).max(RECORD_KINDS.length * 8),\n\t\tfence: z.strictObject({\n\t\t\tattempts: z.number().int().min(1).max(TRANSFER_LIMITS.exportFenceAttempts),\n\t\t}),\n\t})\n\t.superRefine((manifest, ctx) => {\n\t\tconst issue = (path: (string | number)[], message: string) =>\n\t\t\tctx.addIssue({ code: \"custom\", path, message });\n\n\t\tif (!isSortedUnique(manifest.features))\n\t\t\tissue([\"features\"], \"Features must be sorted and unique\");\n\t\tif (!isSortedUnique(manifest.requiredFeatures)) {\n\t\t\tissue([\"requiredFeatures\"], \"Required features must be sorted and unique\");\n\t\t}\n\t\tconst features = new Set(manifest.features);\n\t\tfor (const feature of manifest.requiredFeatures) {\n\t\t\tif (!features.has(feature)) issue([\"requiredFeatures\"], `${feature} is not in features`);\n\t\t}\n\t\tfor (const feature of manifest.features) {\n\t\t\tif (\n\t\t\t\tisSitePackageFeature(feature) &&\n\t\t\t\t!OPTIONAL_FEATURES.has(feature) &&\n\t\t\t\t!manifest.requiredFeatures.includes(feature)\n\t\t\t) {\n\t\t\t\tissue([\"requiredFeatures\"], `${feature} must be required`);\n\t\t\t}\n\t\t}\n\t\tif (!isSortedUnique(manifest.locales.used)) {\n\t\t\tissue([\"locales\", \"used\"], \"Locales must be sorted and unique\");\n\t\t}\n\t\tif (\n\t\t\tmanifest.locales.used.length > 0 &&\n\t\t\t!manifest.locales.used.includes(manifest.locales.default)\n\t\t) {\n\t\t\tissue([\"locales\", \"default\"], \"Default locale must be in use\");\n\t\t}\n\n\t\tlet totalRecords = 0;\n\t\tfor (const kind of RECORD_KINDS) {\n\t\t\tconst summary = manifest.records[kind];\n\t\t\tif (!summary) continue;\n\t\t\ttotalRecords += summary.count;\n\t\t\tif (!features.has(KIND_FEATURE[kind])) {\n\t\t\t\tissue([\"records\", kind], `Kind ${kind} requires feature ${KIND_FEATURE[kind]}`);\n\t\t\t}\n\t\t\tif (\n\t\t\t\tsummary.chunks > summary.count ||\n\t\t\t\tsummary.count > summary.chunks * TRANSFER_LIMITS.chunkRecords\n\t\t\t) {\n\t\t\t\tissue([\"records\", kind], \"Chunk count does not fit the record count\");\n\t\t\t}\n\t\t}\n\t\tif (totalRecords > TRANSFER_LIMITS.totalRecords) issue([\"records\"], \"Too many records\");\n\t\tif (manifest.media.count > 0 && !features.has(\"media\")) {\n\t\t\tissue([\"media\"], \"Media blobs require feature media\");\n\t\t}\n\t\tif (manifest.media.count > manifest.files.count) issue([\"media\"], \"More blobs than files\");\n\t\tif (manifest.media.totalBytes > manifest.files.totalBytes) {\n\t\t\tissue([\"media\"], \"Blob bytes exceed file bytes\");\n\t\t}\n\n\t\tmanifest.index.forEach((chunk, seq) => {\n\t\t\tif (chunk.path !== indexChunkPath(seq))\n\t\t\t\tissue([\"index\", seq, \"path\"], \"Unexpected index path\");\n\t\t});\n\t\tconst indexedEntries = manifest.index.reduce((sum, chunk) => sum + chunk.entries, 0);\n\t\tif (indexedEntries !== manifest.files.count) {\n\t\t\tissue([\"index\"], \"Index entries do not match the file count\");\n\t\t}\n\n\t\tconst transformationKeys = manifest.transformations.map((t) => `${t.code}\\u0000${t.kind}`);\n\t\tif (!isSortedUnique(transformationKeys)) {\n\t\t\tissue([\"transformations\"], \"Transformations must be sorted by code and kind and unique\");\n\t\t}\n\t});\n\nexport type SitePackageManifest = z.infer<typeof sitePackageManifestSchema>;\n\n/** One line of an index chunk. `records` is present exactly for record chunks. */\nexport const packageFileEntrySchema = z\n\t.strictObject({\n\t\tpath: z.string().min(1).max(256),\n\t\tbytes: count,\n\t\tsha256: sha256Hex,\n\t\trecords: count.min(1).max(TRANSFER_LIMITS.chunkRecords).optional(),\n\t})\n\t.superRefine((entry, ctx) => {\n\t\tconst parsed = parsePackagePath(entry.path);\n\t\tif (!parsed || (parsed.type !== \"records\" && parsed.type !== \"media\")) {\n\t\t\tctx.addIssue({ code: \"custom\", path: [\"path\"], message: \"Invalid package file path\" });\n\t\t\treturn;\n\t\t}\n\t\tif (parsed.type === \"records\") {\n\t\t\tif (entry.records === undefined) {\n\t\t\t\tctx.addIssue({ code: \"custom\", path: [\"records\"], message: \"Record count required\" });\n\t\t\t}\n\t\t\tif (entry.bytes > TRANSFER_LIMITS.chunkBytes) {\n\t\t\t\tctx.addIssue({ code: \"custom\", path: [\"bytes\"], message: \"Chunk too large\" });\n\t\t\t}\n\t\t} else {\n\t\t\tif (entry.records !== undefined) {\n\t\t\t\tctx.addIssue({ code: \"custom\", path: [\"records\"], message: \"Blobs have no records\" });\n\t\t\t}\n\t\t\tif (entry.sha256 !== parsed.sha256) {\n\t\t\t\tctx.addIssue({ code: \"custom\", path: [\"sha256\"], message: \"Blob path must be its digest\" });\n\t\t\t}\n\t\t}\n\t});\n\nexport type PackageFileEntry = z.infer<typeof packageFileEntrySchema>;\n\n/**\n * Parse and validate `manifest.json` bytes. Throws a {@link TransferError}:\n * `TRANSFER_LIMIT_EXCEEDED` when too large, `TRANSFER_UNSUPPORTED_FORMAT` for\n * another format or version, `TRANSFER_UNSUPPORTED_FEATURE` for an unknown\n * required feature, and `TRANSFER_MANIFEST_INVALID` otherwise.\n */\nexport function parseManifest(input: string | Uint8Array): SitePackageManifest {\n\tconst byteLength =\n\t\ttypeof input === \"string\" ? new TextEncoder().encode(input).byteLength : input.byteLength;\n\tif (byteLength > TRANSFER_LIMITS.manifestBytes) {\n\t\tthrow new TransferError(\"TRANSFER_LIMIT_EXCEEDED\", \"Manifest is too large\", {\n\t\t\tdetail: { limit: TRANSFER_LIMITS.manifestBytes },\n\t\t});\n\t}\n\tconst text = typeof input === \"string\" ? input : decodeUtf8(input, \"TRANSFER_MANIFEST_INVALID\");\n\n\tlet raw: unknown;\n\ttry {\n\t\traw = parseCanonicalJson(text);\n\t} catch (error) {\n\t\tthrow new TransferError(\"TRANSFER_MANIFEST_INVALID\", \"Manifest is not canonical JSON\", {\n\t\t\tdetail: { reason: error instanceof CanonicalJsonError ? error.message : \"invalid\" },\n\t\t});\n\t}\n\n\tconst envelope = z\n\t\t.looseObject({ format: z.unknown(), formatVersion: z.unknown(), requiredFeatures: z.unknown() })\n\t\t.safeParse(raw);\n\tif (\n\t\t!envelope.success ||\n\t\tenvelope.data.format !== SITE_PACKAGE_FORMAT ||\n\t\ttypeof envelope.data.formatVersion !== \"string\" ||\n\t\t!SUPPORTED_FORMAT_VERSIONS.includes(envelope.data.formatVersion)\n\t) {\n\t\tthrow new TransferError(\"TRANSFER_UNSUPPORTED_FORMAT\", \"Unsupported package format or version\");\n\t}\n\tif (Array.isArray(envelope.data.requiredFeatures)) {\n\t\tconst unsupported = unsupportedRequiredFeatures(\n\t\t\tenvelope.data.requiredFeatures.filter((value): value is string => typeof value === \"string\"),\n\t\t);\n\t\tif (unsupported.length > 0) {\n\t\t\tthrow new TransferError(\n\t\t\t\t\"TRANSFER_UNSUPPORTED_FEATURE\",\n\t\t\t\t\"Package requires unsupported features\",\n\t\t\t\t{\n\t\t\t\t\tdetail: { features: unsupported.slice(0, 20).join(\",\") },\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\t}\n\n\tconst result = sitePackageManifestSchema.safeParse(raw);\n\tif (!result.success) {\n\t\tconst first = result.error.issues[0];\n\t\tconst summary = first ? summarizeSchemaIssue(first, sitePackageManifestSchema.shape) : null;\n\t\tthrow new TransferError(\"TRANSFER_MANIFEST_INVALID\", \"Manifest failed validation\", {\n\t\t\tdetail: {\n\t\t\t\tpath: summary?.path ?? \"\",\n\t\t\t\treason: summary?.message ?? \"invalid\",\n\t\t\t\tissues: result.error.issues.length,\n\t\t\t},\n\t\t});\n\t}\n\treturn result.data;\n}\n\nexport function serializeManifest(manifest: SitePackageManifest): string {\n\treturn canonicalJson(manifest);\n}\n\n/** Parse one index line (canonical JSON, without its newline). */\nexport function parseIndexLine(line: string): PackageFileEntry {\n\tlet raw: unknown;\n\ttry {\n\t\traw = parseCanonicalJson(line);\n\t} catch (error) {\n\t\tthrow new TransferError(\"TRANSFER_MANIFEST_INVALID\", \"Index line is not canonical JSON\", {\n\t\t\tdetail: { reason: error instanceof CanonicalJsonError ? error.message : \"invalid\" },\n\t\t});\n\t}\n\tconst result = packageFileEntrySchema.safeParse(raw);\n\tif (!result.success) {\n\t\tconst first = result.error.issues[0];\n\t\tthrow new TransferError(\"TRANSFER_MANIFEST_INVALID\", \"Index line failed validation\", {\n\t\t\tdetail: {\n\t\t\t\treason: first\n\t\t\t\t\t? summarizeSchemaIssue(first, packageFileEntrySchema.shape).message\n\t\t\t\t\t: \"invalid\",\n\t\t\t},\n\t\t});\n\t}\n\treturn result.data;\n}\n\nexport function decodeUtf8(\n\tbytes: Uint8Array,\n\tcode: \"TRANSFER_MANIFEST_INVALID\" | \"TRANSFER_RECORD_INVALID\",\n): string {\n\ttry {\n\t\treturn new TextDecoder(\"utf-8\", { fatal: true, ignoreBOM: true }).decode(bytes);\n\t} catch {\n\t\tthrow new TransferError(code, \"File is not valid UTF-8\");\n\t}\n}\n","/**\n * The `.emdash` single-file container: an uncompressed tar of the package\n * files, `manifest.json` first. The container is transport only — the package\n * digest covers the manifest, which pins every file — so these helpers never\n * need to trust the archive: every entry must be a regular file at a valid\n * package path, appear once, and carry exactly its declared size.\n *\n * Runs in browsers, Node, and Workers (web streams only).\n */\n\nimport { createTarDecoder, createTarPacker } from \"modern-tar\";\n\nimport { TransferError } from \"../errors.js\";\nimport { TRANSFER_LIMITS } from \"../format/limits.js\";\nimport { MANIFEST_PATH, parsePackagePath, type PackagePath } from \"../format/paths.js\";\n\nexport const SITE_PACKAGE_FILE_EXTENSION = \".emdash\";\nexport const SITE_PACKAGE_MEDIA_TYPE = \"application/x-tar\";\n\n/** Upper bound on archive entries: every indexed file, the index chunks, and the manifest. */\nconst MAX_ENTRIES = TRANSFER_LIMITS.totalFiles + TRANSFER_LIMITS.indexChunks + 1;\n\nconst DIRECTORY_ENTRY_PATTERN = /^(?:index|media|records(?:\\/[a-z_]+)?)\\/?$/;\nconst FIXED_MTIME = new Date(0);\n\nfunction containerError(message: string, detail?: Record<string, string | number>): TransferError {\n\treturn new TransferError(\"TRANSFER_CONTAINER_INVALID\", message, detail ? { detail } : {});\n}\n\nexport interface PackageFileSource {\n\tpath: string;\n\tbytes: number;\n\tbody: () =>\n\t\t| Promise<ReadableStream<Uint8Array> | Uint8Array>\n\t\t| ReadableStream<Uint8Array>\n\t\t| Uint8Array;\n}\n\nfunction toStream(body: ReadableStream<Uint8Array> | Uint8Array): ReadableStream<Uint8Array> {\n\tif (!(body instanceof Uint8Array)) return body;\n\treturn new ReadableStream<Uint8Array>({\n\t\tstart(controller) {\n\t\t\tif (body.byteLength > 0) controller.enqueue(body);\n\t\t\tcontroller.close();\n\t\t},\n\t});\n}\n\nfunction sizeGuard(path: string, expected: number): TransformStream<Uint8Array, Uint8Array> {\n\tlet seen = 0;\n\treturn new TransformStream<Uint8Array, Uint8Array>({\n\t\ttransform(chunk, controller) {\n\t\t\tseen += chunk.byteLength;\n\t\t\tif (seen > expected) throw containerError(\"Entry is larger than declared\", { path });\n\t\t\tcontroller.enqueue(chunk);\n\t\t},\n\t\tflush() {\n\t\t\tif (seen !== expected) throw containerError(\"Entry is smaller than declared\", { path });\n\t\t},\n\t});\n}\n\n/**\n * Stream a container from package files. `manifest.json` must come first;\n * every path must be a valid package path and appear once, and each body must\n * produce exactly `bytes` bytes. Entries get a fixed mtime and mode so the\n * same files always produce the same archive bytes.\n */\nexport function packSitePackage(\n\tfiles: AsyncIterable<PackageFileSource> | Iterable<PackageFileSource>,\n): ReadableStream<Uint8Array> {\n\tconst { readable, controller } = createTarPacker();\n\tvoid (async () => {\n\t\tconst seen = new Set<string>();\n\t\ttry {\n\t\t\tfor await (const file of files) {\n\t\t\t\tif (seen.size === 0 && file.path !== MANIFEST_PATH) {\n\t\t\t\t\tthrow containerError(\"The manifest must be the first entry\");\n\t\t\t\t}\n\t\t\t\tif (!parsePackagePath(file.path)) {\n\t\t\t\t\tthrow containerError(\"Invalid package path\", { path: file.path });\n\t\t\t\t}\n\t\t\t\tif (seen.has(file.path))\n\t\t\t\t\tthrow containerError(\"Duplicate package path\", { path: file.path });\n\t\t\t\tif (seen.size >= MAX_ENTRIES) throw containerError(\"Too many entries\");\n\t\t\t\tif (!Number.isSafeInteger(file.bytes) || file.bytes < 0) {\n\t\t\t\t\tthrow containerError(\"Invalid entry size\", { path: file.path });\n\t\t\t\t}\n\t\t\t\tseen.add(file.path);\n\t\t\t\tconst entry = controller.add({\n\t\t\t\t\tname: file.path,\n\t\t\t\t\tsize: file.bytes,\n\t\t\t\t\ttype: \"file\",\n\t\t\t\t\tmode: 0o644,\n\t\t\t\t\tmtime: FIXED_MTIME,\n\t\t\t\t});\n\t\t\t\tawait toStream(await file.body())\n\t\t\t\t\t.pipeThrough(sizeGuard(file.path, file.bytes))\n\t\t\t\t\t.pipeTo(entry);\n\t\t\t}\n\t\t\tif (seen.size === 0) throw containerError(\"The manifest must be the first entry\");\n\t\t\tcontroller.finalize();\n\t\t} catch (error) {\n\t\t\tcontroller.error(error);\n\t\t}\n\t})();\n\treturn readable;\n}\n\nexport interface UnpackedPackageFile {\n\tpath: string;\n\tparsed: PackagePath;\n\tbytes: number;\n\tbody: ReadableStream<Uint8Array>;\n}\n\nexport interface UnpackOptions {\n\t/** Declared size for a path (from the manifest/index), checked against the entry header. */\n\texpectedBytes?: (path: string) => number | undefined;\n}\n\n/**\n * Read a container entry by entry. `onFile` receives each file in archive\n * order and may read its body; an unread body is skipped. If `onFile` takes a\n * reader it must read the body to the end or release the lock.\n * Rejects symlinks, hard links, and other non-file entries; paths that are\n * not package paths (absolute, `..`, anything undeclared by the format);\n * duplicates; a first entry other than `manifest.json`; and size mismatches.\n * Directory entries for the package's own directories are skipped.\n */\nexport async function unpackSitePackage(\n\tarchive: ReadableStream<Uint8Array>,\n\tonFile: (file: UnpackedPackageFile) => Promise<void>,\n\toptions: UnpackOptions = {},\n): Promise<{ files: number }> {\n\tconst seen = new Set<string>();\n\tlet callbackError: unknown;\n\tconst entries = archive.pipeThrough(createTarDecoder({ strict: true }));\n\tconst reader = entries.getReader();\n\ttry {\n\t\tfor (;;) {\n\t\t\tconst { done, value: entry } = await reader.read();\n\t\t\tif (done) break;\n\t\t\tconst { header } = entry;\n\t\t\tconst type = header.type ?? \"file\";\n\t\t\tconst name = header.name.startsWith(\"./\") ? header.name.slice(2) : header.name;\n\n\t\t\tif (type === \"directory\" && DIRECTORY_ENTRY_PATTERN.test(name)) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (type !== \"file\") {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"Container entries must be regular files\", { path: name });\n\t\t\t}\n\t\t\tconst parsed = parsePackagePath(name);\n\t\t\tif (!parsed) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"Invalid package path\", { path: name.slice(0, 256) });\n\t\t\t}\n\t\t\tif (seen.size === 0 && parsed.type !== \"manifest\") {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"The manifest must be the first entry\");\n\t\t\t}\n\t\t\tif (seen.has(name)) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"Duplicate package path\", { path: name });\n\t\t\t}\n\t\t\tif (seen.size >= MAX_ENTRIES) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"Too many entries\");\n\t\t\t}\n\t\t\tconst expected = options.expectedBytes?.(name);\n\t\t\tif (expected !== undefined && expected !== header.size) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow containerError(\"Entry size does not match the declared size\", { path: name });\n\t\t\t}\n\t\t\tif (parsed.type === \"manifest\" && header.size > TRANSFER_LIMITS.manifestBytes) {\n\t\t\t\tawait entry.body.cancel();\n\t\t\t\tthrow new TransferError(\"TRANSFER_LIMIT_EXCEEDED\", \"Manifest is too large\");\n\t\t\t}\n\t\t\tseen.add(name);\n\n\t\t\tconst body = entry.body.pipeThrough(sizeGuard(name, header.size));\n\t\t\tlet consumed = false;\n\t\t\tconst tracked = body.pipeThrough(\n\t\t\t\tnew TransformStream<Uint8Array, Uint8Array>({\n\t\t\t\t\tflush() {\n\t\t\t\t\t\tconsumed = true;\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t);\n\t\t\ttry {\n\t\t\t\tawait onFile({ path: name, parsed, bytes: header.size, body: tracked });\n\t\t\t} catch (error) {\n\t\t\t\tcallbackError = error;\n\t\t\t\tawait tracked.cancel().catch(() => undefined);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\tif (!consumed) {\n\t\t\t\tif (tracked.locked) {\n\t\t\t\t\tthrow containerError(\"An entry body was left locked without being read\", {\n\t\t\t\t\t\tpath: name,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tawait tracked.cancel();\n\t\t\t}\n\t\t}\n\t} catch (error) {\n\t\tawait reader.cancel().catch(() => undefined);\n\t\tif (error === callbackError || error instanceof TransferError) throw error;\n\t\tthrow new TransferError(\"TRANSFER_CONTAINER_INVALID\", \"Container could not be read\", {\n\t\t\tcause: error,\n\t\t});\n\t} finally {\n\t\treader.releaseLock();\n\t}\n\tif (seen.size === 0) throw containerError(\"The manifest must be the first entry\");\n\treturn { files: seen.size };\n}\n\n/** Buffer every file of a small container into memory (tests, small tools). */\nexport async function readSitePackageArchive(\n\tarchive: ReadableStream<Uint8Array> | Uint8Array,\n\toptions: UnpackOptions & { maxTotalBytes?: number } = {},\n): Promise<Map<string, Uint8Array>> {\n\tconst files = new Map<string, Uint8Array>();\n\tconst maxTotal = options.maxTotalBytes ?? 256 * 1024 * 1024;\n\tlet total = 0;\n\tawait unpackSitePackage(\n\t\ttoStream(archive),\n\t\tasync (file) => {\n\t\t\ttotal += file.bytes;\n\t\t\tif (total > maxTotal) {\n\t\t\t\tthrow new TransferError(\"TRANSFER_LIMIT_EXCEEDED\", \"Container is too large to buffer\");\n\t\t\t}\n\t\t\tfiles.set(file.path, new Uint8Array(await new Response(file.body).arrayBuffer()));\n\t\t},\n\t\toptions,\n\t);\n\treturn files;\n}\n"],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- //#region src/migrations/target.ts
2
- const ENVIRONMENT_VARIABLE_PATTERN = /^[A-Za-z_][A-Za-z0-9_]*$/;
3
- function encodeHex(bytes) {
4
- return Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
5
- }
6
- async function createMigrationTarget(kind, label, identity) {
7
- const encoded = new TextEncoder().encode(JSON.stringify({
8
- kind,
9
- identity
10
- }));
11
- const digest = await crypto.subtle.digest("SHA-256", encoded);
12
- return {
13
- kind,
14
- label,
15
- fingerprint: encodeHex(new Uint8Array(digest))
16
- };
17
- }
18
- function requireMigrationEnvironment(name, env) {
19
- if (typeof name !== "string" || !ENVIRONMENT_VARIABLE_PATTERN.test(name)) throw new Error("Migration credential environment variable name is invalid.");
20
- const value = env[name];
21
- if (!value) throw new Error(`Migration credential environment variable ${name} is not set.`);
22
- return value;
23
- }
24
-
25
- //#endregion
26
- export { requireMigrationEnvironment as n, createMigrationTarget as t };
27
- //# sourceMappingURL=target-YhYH_0uc.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"target-YhYH_0uc.mjs","names":[],"sources":["../src/migrations/target.ts"],"sourcesContent":["import type { MigrationTarget } from \"./protocol.js\";\n\nconst ENVIRONMENT_VARIABLE_PATTERN = /^[A-Za-z_][A-Za-z0-9_]*$/;\n\nfunction encodeHex(bytes: Uint8Array): string {\n\treturn Array.from(bytes, (byte) => byte.toString(16).padStart(2, \"0\")).join(\"\");\n}\n\nexport async function createMigrationTarget(\n\tkind: string,\n\tlabel: string,\n\tidentity: readonly string[],\n): Promise<MigrationTarget> {\n\tconst encoded = new TextEncoder().encode(JSON.stringify({ kind, identity }));\n\tconst digest = await crypto.subtle.digest(\"SHA-256\", encoded);\n\treturn {\n\t\tkind,\n\t\tlabel,\n\t\tfingerprint: encodeHex(new Uint8Array(digest)),\n\t};\n}\n\nexport function requireMigrationEnvironment(\n\tname: unknown,\n\tenv: Readonly<Record<string, string | undefined>>,\n): string {\n\tif (typeof name !== \"string\" || !ENVIRONMENT_VARIABLE_PATTERN.test(name)) {\n\t\tthrow new Error(\"Migration credential environment variable name is invalid.\");\n\t}\n\tconst value = env[name];\n\tif (!value) {\n\t\tthrow new Error(`Migration credential environment variable ${name} is not set.`);\n\t}\n\treturn value;\n}\n"],"mappings":";AAEA,MAAM,+BAA+B;AAErC,SAAS,UAAU,OAA2B;AAC7C,QAAO,MAAM,KAAK,QAAQ,SAAS,KAAK,SAAS,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,KAAK,GAAG;;AAGhF,eAAsB,sBACrB,MACA,OACA,UAC2B;CAC3B,MAAM,UAAU,IAAI,aAAa,CAAC,OAAO,KAAK,UAAU;EAAE;EAAM;EAAU,CAAC,CAAC;CAC5E,MAAM,SAAS,MAAM,OAAO,OAAO,OAAO,WAAW,QAAQ;AAC7D,QAAO;EACN;EACA;EACA,aAAa,UAAU,IAAI,WAAW,OAAO,CAAC;EAC9C;;AAGF,SAAgB,4BACf,MACA,KACS;AACT,KAAI,OAAO,SAAS,YAAY,CAAC,6BAA6B,KAAK,KAAK,CACvE,OAAM,IAAI,MAAM,6DAA6D;CAE9E,MAAM,QAAQ,IAAI;AAClB,KAAI,CAAC,MACJ,OAAM,IAAI,MAAM,6CAA6C,KAAK,cAAc;AAEjF,QAAO"}