@zlooks.cn/blog-server 1.0.6 → 1.0.8

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 (731) hide show
  1. package/dist/blog/blog-application.d.ts +15 -11
  2. package/dist/blog/blog-application.d.ts.map +1 -1
  3. package/dist/blog/blog-application.js +6 -4
  4. package/dist/blog/blog-application.js.map +1 -1
  5. package/dist/blog/comment-client-metadata.d.ts +6 -3
  6. package/dist/blog/comment-client-metadata.d.ts.map +1 -1
  7. package/dist/blog/comment-client-metadata.js +13 -3
  8. package/dist/blog/comment-client-metadata.js.map +1 -1
  9. package/dist/blog/errors.d.ts +6 -0
  10. package/dist/blog/errors.d.ts.map +1 -1
  11. package/dist/blog/errors.js +42 -2
  12. package/dist/blog/errors.js.map +1 -1
  13. package/dist/blog/post-content-audit.d.ts +0 -1
  14. package/dist/blog/post-content-audit.d.ts.map +1 -1
  15. package/dist/blog/post-content-audit.js +50 -13
  16. package/dist/blog/post-content-audit.js.map +1 -1
  17. package/dist/blog/public-blog-service.d.ts +47 -18
  18. package/dist/blog/public-blog-service.d.ts.map +1 -1
  19. package/dist/blog/public-blog-service.js +127 -101
  20. package/dist/blog/public-blog-service.js.map +1 -1
  21. package/dist/browser-api/http-message.d.ts +55 -0
  22. package/dist/browser-api/http-message.d.ts.map +1 -0
  23. package/dist/browser-api/http-message.js +159 -0
  24. package/dist/browser-api/http-message.js.map +1 -0
  25. package/dist/command/index.js +2 -6
  26. package/dist/command/index.js.map +1 -1
  27. package/dist/config/schema.d.ts.map +1 -1
  28. package/dist/config/schema.js +10 -3
  29. package/dist/config/schema.js.map +1 -1
  30. package/dist/contracts/mcp.d.ts +9 -9
  31. package/dist/contracts/mcp.d.ts.map +1 -1
  32. package/dist/contracts/mcp.js +44 -15
  33. package/dist/contracts/mcp.js.map +1 -1
  34. package/dist/contracts/public-api.d.ts +1 -1
  35. package/dist/contracts/public-api.d.ts.map +1 -1
  36. package/dist/contracts/public-api.js +1 -1
  37. package/dist/contracts/public-api.js.map +1 -1
  38. package/dist/events/blog-domain-events.d.ts +21 -20
  39. package/dist/events/blog-domain-events.d.ts.map +1 -1
  40. package/dist/events/blog-domain-events.js +54 -21
  41. package/dist/events/blog-domain-events.js.map +1 -1
  42. package/dist/mcp/blog-prompts.d.ts.map +1 -1
  43. package/dist/mcp/blog-prompts.js +5 -4
  44. package/dist/mcp/blog-prompts.js.map +1 -1
  45. package/dist/mcp/blog-provider.d.ts +3 -3
  46. package/dist/mcp/blog-provider.d.ts.map +1 -1
  47. package/dist/mcp/blog-provider.js +3 -3
  48. package/dist/mcp/blog-provider.js.map +1 -1
  49. package/dist/mcp/blog-resources.d.ts +113 -1
  50. package/dist/mcp/blog-resources.d.ts.map +1 -1
  51. package/dist/mcp/blog-resources.js +156 -63
  52. package/dist/mcp/blog-resources.js.map +1 -1
  53. package/dist/mcp/blog-theme-authoring-prompt.d.ts.map +1 -1
  54. package/dist/mcp/blog-theme-authoring-prompt.js +4 -3
  55. package/dist/mcp/blog-theme-authoring-prompt.js.map +1 -1
  56. package/dist/mcp/category-tools.d.ts +2 -7
  57. package/dist/mcp/category-tools.d.ts.map +1 -1
  58. package/dist/mcp/category-tools.js +6 -8
  59. package/dist/mcp/category-tools.js.map +1 -1
  60. package/dist/mcp/comment-tools.d.ts +2 -7
  61. package/dist/mcp/comment-tools.d.ts.map +1 -1
  62. package/dist/mcp/comment-tools.js +7 -9
  63. package/dist/mcp/comment-tools.js.map +1 -1
  64. package/dist/mcp/friend-link-tools.d.ts +2 -7
  65. package/dist/mcp/friend-link-tools.d.ts.map +1 -1
  66. package/dist/mcp/friend-link-tools.js +8 -10
  67. package/dist/mcp/friend-link-tools.js.map +1 -1
  68. package/dist/mcp/page-tools.d.ts +2 -7
  69. package/dist/mcp/page-tools.d.ts.map +1 -1
  70. package/dist/mcp/page-tools.js +8 -30
  71. package/dist/mcp/page-tools.js.map +1 -1
  72. package/dist/mcp/post-tools.d.ts +2 -7
  73. package/dist/mcp/post-tools.d.ts.map +1 -1
  74. package/dist/mcp/post-tools.js +26 -114
  75. package/dist/mcp/post-tools.js.map +1 -1
  76. package/dist/mcp/tag-tools.d.ts +2 -7
  77. package/dist/mcp/tag-tools.d.ts.map +1 -1
  78. package/dist/mcp/tag-tools.js +6 -8
  79. package/dist/mcp/tag-tools.js.map +1 -1
  80. package/dist/mcp/theme-tools.d.ts +2 -9
  81. package/dist/mcp/theme-tools.d.ts.map +1 -1
  82. package/dist/mcp/theme-tools.js +6 -59
  83. package/dist/mcp/theme-tools.js.map +1 -1
  84. package/dist/mcp/tool-descriptions.d.ts.map +1 -1
  85. package/dist/mcp/tool-descriptions.js +2 -11
  86. package/dist/mcp/tool-descriptions.js.map +1 -1
  87. package/dist/mcp/tool-support.d.ts +13 -232
  88. package/dist/mcp/tool-support.d.ts.map +1 -1
  89. package/dist/mcp/tool-support.js +57 -98
  90. package/dist/mcp/tool-support.js.map +1 -1
  91. package/dist/messages/api/blog/[path+]/index.msg.d.ts +3 -0
  92. package/dist/messages/api/blog/[path+]/index.msg.d.ts.map +1 -0
  93. package/dist/messages/api/blog/[path+]/index.msg.js +7 -0
  94. package/dist/messages/api/blog/[path+]/index.msg.js.map +1 -0
  95. package/dist/messages/api/blog/categories/index.msg.d.ts +3 -0
  96. package/dist/messages/api/blog/categories/index.msg.d.ts.map +1 -0
  97. package/dist/messages/api/blog/categories/index.msg.js +6 -0
  98. package/dist/messages/api/blog/categories/index.msg.js.map +1 -0
  99. package/dist/messages/api/blog/friend-links/index.msg.d.ts +3 -0
  100. package/dist/messages/api/blog/friend-links/index.msg.d.ts.map +1 -0
  101. package/dist/messages/api/blog/friend-links/index.msg.js +6 -0
  102. package/dist/messages/api/blog/friend-links/index.msg.js.map +1 -0
  103. package/dist/messages/api/blog/likes/[slug]/index.msg.d.ts +3 -0
  104. package/dist/messages/api/blog/likes/[slug]/index.msg.d.ts.map +1 -0
  105. package/dist/messages/api/blog/likes/[slug]/index.msg.js +14 -0
  106. package/dist/messages/api/blog/likes/[slug]/index.msg.js.map +1 -0
  107. package/dist/messages/api/blog/posts/[slug]/comments/index.msg.d.ts +3 -0
  108. package/dist/messages/api/blog/posts/[slug]/comments/index.msg.d.ts.map +1 -0
  109. package/dist/messages/api/blog/posts/[slug]/comments/index.msg.js +18 -0
  110. package/dist/messages/api/blog/posts/[slug]/comments/index.msg.js.map +1 -0
  111. package/dist/messages/api/blog/posts/[slug]/index.msg.d.ts +3 -0
  112. package/dist/messages/api/blog/posts/[slug]/index.msg.d.ts.map +1 -0
  113. package/dist/messages/api/blog/posts/[slug]/index.msg.js +11 -0
  114. package/dist/messages/api/blog/posts/[slug]/index.msg.js.map +1 -0
  115. package/dist/messages/api/blog/posts/index.msg.d.ts +3 -0
  116. package/dist/messages/api/blog/posts/index.msg.d.ts.map +1 -0
  117. package/dist/messages/api/blog/posts/index.msg.js +12 -0
  118. package/dist/messages/api/blog/posts/index.msg.js.map +1 -0
  119. package/dist/messages/api/blog/search/index.msg.d.ts +3 -0
  120. package/dist/messages/api/blog/search/index.msg.d.ts.map +1 -0
  121. package/dist/messages/api/blog/search/index.msg.js +9 -0
  122. package/dist/messages/api/blog/search/index.msg.js.map +1 -0
  123. package/dist/messages/api/blog/tags/index.msg.d.ts +3 -0
  124. package/dist/messages/api/blog/tags/index.msg.d.ts.map +1 -0
  125. package/dist/messages/api/blog/tags/index.msg.js +6 -0
  126. package/dist/messages/api/blog/tags/index.msg.js.map +1 -0
  127. package/dist/messages/management/categories/create.msg.d.ts +22 -0
  128. package/dist/messages/management/categories/create.msg.d.ts.map +1 -0
  129. package/dist/messages/management/categories/create.msg.js +5 -0
  130. package/dist/messages/management/categories/create.msg.js.map +1 -0
  131. package/dist/messages/management/categories/delete.msg.d.ts +12 -0
  132. package/dist/messages/management/categories/delete.msg.d.ts.map +1 -0
  133. package/dist/messages/management/categories/delete.msg.js +5 -0
  134. package/dist/messages/management/categories/delete.msg.js.map +1 -0
  135. package/dist/messages/management/categories/list.msg.d.ts +21 -0
  136. package/dist/messages/management/categories/list.msg.d.ts.map +1 -0
  137. package/dist/messages/management/categories/list.msg.js +5 -0
  138. package/dist/messages/management/categories/list.msg.js.map +1 -0
  139. package/dist/messages/management/categories/read.msg.d.ts +19 -0
  140. package/dist/messages/management/categories/read.msg.d.ts.map +1 -0
  141. package/dist/messages/management/categories/read.msg.js +5 -0
  142. package/dist/messages/management/categories/read.msg.js.map +1 -0
  143. package/dist/messages/management/categories/update.msg.d.ts +23 -0
  144. package/dist/messages/management/categories/update.msg.d.ts.map +1 -0
  145. package/dist/messages/management/categories/update.msg.js +5 -0
  146. package/dist/messages/management/categories/update.msg.js.map +1 -0
  147. package/dist/messages/management/comments/approve.msg.d.ts +29 -0
  148. package/dist/messages/management/comments/approve.msg.d.ts.map +1 -0
  149. package/dist/messages/management/comments/approve.msg.js +5 -0
  150. package/dist/messages/management/comments/approve.msg.js.map +1 -0
  151. package/dist/messages/management/comments/delete.msg.d.ts +12 -0
  152. package/dist/messages/management/comments/delete.msg.d.ts.map +1 -0
  153. package/dist/messages/management/comments/delete.msg.js +5 -0
  154. package/dist/messages/management/comments/delete.msg.js.map +1 -0
  155. package/dist/messages/management/comments/list.msg.d.ts +41 -0
  156. package/dist/messages/management/comments/list.msg.d.ts.map +1 -0
  157. package/dist/messages/management/comments/list.msg.js +5 -0
  158. package/dist/messages/management/comments/list.msg.js.map +1 -0
  159. package/dist/messages/management/comments/read.msg.d.ts +29 -0
  160. package/dist/messages/management/comments/read.msg.d.ts.map +1 -0
  161. package/dist/messages/management/comments/read.msg.js +5 -0
  162. package/dist/messages/management/comments/read.msg.js.map +1 -0
  163. package/dist/messages/management/comments/reject.msg.d.ts +29 -0
  164. package/dist/messages/management/comments/reject.msg.d.ts.map +1 -0
  165. package/dist/messages/management/comments/reject.msg.js +5 -0
  166. package/dist/messages/management/comments/reject.msg.js.map +1 -0
  167. package/dist/messages/management/comments/reply.msg.d.ts +30 -0
  168. package/dist/messages/management/comments/reply.msg.d.ts.map +1 -0
  169. package/dist/messages/management/comments/reply.msg.js +5 -0
  170. package/dist/messages/management/comments/reply.msg.js.map +1 -0
  171. package/dist/messages/management/friend-links/create.msg.d.ts +26 -0
  172. package/dist/messages/management/friend-links/create.msg.d.ts.map +1 -0
  173. package/dist/messages/management/friend-links/create.msg.js +5 -0
  174. package/dist/messages/management/friend-links/create.msg.js.map +1 -0
  175. package/dist/messages/management/friend-links/delete.msg.d.ts +12 -0
  176. package/dist/messages/management/friend-links/delete.msg.d.ts.map +1 -0
  177. package/dist/messages/management/friend-links/delete.msg.js +5 -0
  178. package/dist/messages/management/friend-links/delete.msg.js.map +1 -0
  179. package/dist/messages/management/friend-links/disable.msg.d.ts +21 -0
  180. package/dist/messages/management/friend-links/disable.msg.d.ts.map +1 -0
  181. package/dist/messages/management/friend-links/disable.msg.js +5 -0
  182. package/dist/messages/management/friend-links/disable.msg.js.map +1 -0
  183. package/dist/messages/management/friend-links/enable.msg.d.ts +21 -0
  184. package/dist/messages/management/friend-links/enable.msg.d.ts.map +1 -0
  185. package/dist/messages/management/friend-links/enable.msg.js +5 -0
  186. package/dist/messages/management/friend-links/enable.msg.js.map +1 -0
  187. package/dist/messages/management/friend-links/list.msg.d.ts +23 -0
  188. package/dist/messages/management/friend-links/list.msg.d.ts.map +1 -0
  189. package/dist/messages/management/friend-links/list.msg.js +5 -0
  190. package/dist/messages/management/friend-links/list.msg.js.map +1 -0
  191. package/dist/messages/management/friend-links/read.msg.d.ts +21 -0
  192. package/dist/messages/management/friend-links/read.msg.d.ts.map +1 -0
  193. package/dist/messages/management/friend-links/read.msg.js +5 -0
  194. package/dist/messages/management/friend-links/read.msg.js.map +1 -0
  195. package/dist/messages/management/friend-links/update.msg.d.ts +27 -0
  196. package/dist/messages/management/friend-links/update.msg.d.ts.map +1 -0
  197. package/dist/messages/management/friend-links/update.msg.js +5 -0
  198. package/dist/messages/management/friend-links/update.msg.js.map +1 -0
  199. package/dist/messages/management/pages/archive.msg.d.ts +30 -0
  200. package/dist/messages/management/pages/archive.msg.d.ts.map +1 -0
  201. package/dist/messages/management/pages/archive.msg.js +5 -0
  202. package/dist/messages/management/pages/archive.msg.js.map +1 -0
  203. package/dist/messages/management/pages/create.msg.d.ts +38 -0
  204. package/dist/messages/management/pages/create.msg.d.ts.map +1 -0
  205. package/dist/messages/management/pages/create.msg.js +5 -0
  206. package/dist/messages/management/pages/create.msg.js.map +1 -0
  207. package/dist/messages/management/pages/delete.msg.d.ts +12 -0
  208. package/dist/messages/management/pages/delete.msg.d.ts.map +1 -0
  209. package/dist/messages/management/pages/delete.msg.js +5 -0
  210. package/dist/messages/management/pages/delete.msg.js.map +1 -0
  211. package/dist/messages/management/pages/list.msg.d.ts +41 -0
  212. package/dist/messages/management/pages/list.msg.d.ts.map +1 -0
  213. package/dist/messages/management/pages/list.msg.js +5 -0
  214. package/dist/messages/management/pages/list.msg.js.map +1 -0
  215. package/dist/messages/management/pages/publish.msg.d.ts +30 -0
  216. package/dist/messages/management/pages/publish.msg.d.ts.map +1 -0
  217. package/dist/messages/management/pages/publish.msg.js +5 -0
  218. package/dist/messages/management/pages/publish.msg.js.map +1 -0
  219. package/dist/messages/management/pages/read.msg.d.ts +30 -0
  220. package/dist/messages/management/pages/read.msg.d.ts.map +1 -0
  221. package/dist/messages/management/pages/read.msg.js +5 -0
  222. package/dist/messages/management/pages/read.msg.js.map +1 -0
  223. package/dist/messages/management/pages/update.msg.d.ts +39 -0
  224. package/dist/messages/management/pages/update.msg.d.ts.map +1 -0
  225. package/dist/messages/management/pages/update.msg.js +5 -0
  226. package/dist/messages/management/pages/update.msg.js.map +1 -0
  227. package/dist/messages/management/posts/archive-list.msg.d.ts +48 -0
  228. package/dist/messages/management/posts/archive-list.msg.d.ts.map +1 -0
  229. package/dist/messages/management/posts/archive-list.msg.js +5 -0
  230. package/dist/messages/management/posts/archive-list.msg.js.map +1 -0
  231. package/dist/messages/management/posts/archive.msg.d.ts +34 -0
  232. package/dist/messages/management/posts/archive.msg.d.ts.map +1 -0
  233. package/dist/messages/management/posts/archive.msg.js +5 -0
  234. package/dist/messages/management/posts/archive.msg.js.map +1 -0
  235. package/dist/messages/management/posts/audit.msg.d.ts +41 -0
  236. package/dist/messages/management/posts/audit.msg.d.ts.map +1 -0
  237. package/dist/messages/management/posts/audit.msg.js +5 -0
  238. package/dist/messages/management/posts/audit.msg.js.map +1 -0
  239. package/dist/messages/management/posts/create.msg.d.ts +40 -0
  240. package/dist/messages/management/posts/create.msg.d.ts.map +1 -0
  241. package/dist/messages/management/posts/create.msg.js +5 -0
  242. package/dist/messages/management/posts/create.msg.js.map +1 -0
  243. package/dist/messages/management/posts/delete.msg.d.ts +12 -0
  244. package/dist/messages/management/posts/delete.msg.d.ts.map +1 -0
  245. package/dist/messages/management/posts/delete.msg.js +5 -0
  246. package/dist/messages/management/posts/delete.msg.js.map +1 -0
  247. package/dist/messages/management/posts/list.msg.d.ts +42 -0
  248. package/dist/messages/management/posts/list.msg.d.ts.map +1 -0
  249. package/dist/messages/management/posts/list.msg.js +5 -0
  250. package/dist/messages/management/posts/list.msg.js.map +1 -0
  251. package/dist/messages/management/posts/publish.msg.d.ts +68 -0
  252. package/dist/messages/management/posts/publish.msg.d.ts.map +1 -0
  253. package/dist/messages/management/posts/publish.msg.js +23 -0
  254. package/dist/messages/management/posts/publish.msg.js.map +1 -0
  255. package/dist/messages/management/posts/read.msg.d.ts +34 -0
  256. package/dist/messages/management/posts/read.msg.d.ts.map +1 -0
  257. package/dist/messages/management/posts/read.msg.js +5 -0
  258. package/dist/messages/management/posts/read.msg.js.map +1 -0
  259. package/dist/messages/management/posts/search.msg.d.ts +39 -0
  260. package/dist/messages/management/posts/search.msg.d.ts.map +1 -0
  261. package/dist/messages/management/posts/search.msg.js +5 -0
  262. package/dist/messages/management/posts/search.msg.js.map +1 -0
  263. package/dist/messages/management/posts/update.msg.d.ts +41 -0
  264. package/dist/messages/management/posts/update.msg.d.ts.map +1 -0
  265. package/dist/messages/management/posts/update.msg.js +5 -0
  266. package/dist/messages/management/posts/update.msg.js.map +1 -0
  267. package/dist/messages/management/tags/create.msg.d.ts +18 -0
  268. package/dist/messages/management/tags/create.msg.d.ts.map +1 -0
  269. package/dist/messages/management/tags/create.msg.js +5 -0
  270. package/dist/messages/management/tags/create.msg.js.map +1 -0
  271. package/dist/messages/management/tags/delete.msg.d.ts +12 -0
  272. package/dist/messages/management/tags/delete.msg.d.ts.map +1 -0
  273. package/dist/messages/management/tags/delete.msg.js +5 -0
  274. package/dist/messages/management/tags/delete.msg.js.map +1 -0
  275. package/dist/messages/management/tags/list.msg.d.ts +19 -0
  276. package/dist/messages/management/tags/list.msg.d.ts.map +1 -0
  277. package/dist/messages/management/tags/list.msg.js +5 -0
  278. package/dist/messages/management/tags/list.msg.js.map +1 -0
  279. package/dist/messages/management/tags/read.msg.d.ts +17 -0
  280. package/dist/messages/management/tags/read.msg.d.ts.map +1 -0
  281. package/dist/messages/management/tags/read.msg.js +5 -0
  282. package/dist/messages/management/tags/read.msg.js.map +1 -0
  283. package/dist/messages/management/tags/update.msg.d.ts +19 -0
  284. package/dist/messages/management/tags/update.msg.d.ts.map +1 -0
  285. package/dist/messages/management/tags/update.msg.js +5 -0
  286. package/dist/messages/management/tags/update.msg.js.map +1 -0
  287. package/dist/messages/management/themes/list.msg.d.ts +32 -0
  288. package/dist/messages/management/themes/list.msg.d.ts.map +1 -0
  289. package/dist/messages/management/themes/list.msg.js +5 -0
  290. package/dist/messages/management/themes/list.msg.js.map +1 -0
  291. package/dist/messages/management/themes/read-selection.msg.d.ts +12 -0
  292. package/dist/messages/management/themes/read-selection.msg.d.ts.map +1 -0
  293. package/dist/messages/management/themes/read-selection.msg.js +5 -0
  294. package/dist/messages/management/themes/read-selection.msg.js.map +1 -0
  295. package/dist/messages/management/themes/read-status.msg.d.ts +25 -0
  296. package/dist/messages/management/themes/read-status.msg.d.ts.map +1 -0
  297. package/dist/messages/management/themes/read-status.msg.js +5 -0
  298. package/dist/messages/management/themes/read-status.msg.js.map +1 -0
  299. package/dist/messages/management/themes/select.msg.d.ts +35 -0
  300. package/dist/messages/management/themes/select.msg.d.ts.map +1 -0
  301. package/dist/messages/management/themes/select.msg.js +5 -0
  302. package/dist/messages/management/themes/select.msg.js.map +1 -0
  303. package/dist/messages/model-message.d.ts +7 -0
  304. package/dist/messages/model-message.d.ts.map +1 -0
  305. package/dist/messages/model-message.js +9 -0
  306. package/dist/messages/model-message.js.map +1 -0
  307. package/dist/messages/public/categories/list.msg.d.ts +12 -1
  308. package/dist/messages/public/categories/list.msg.js +4 -7
  309. package/dist/messages/public/categories/list.msg.js.map +1 -1
  310. package/dist/messages/public/comments/create.msg.d.ts +37 -0
  311. package/dist/messages/public/comments/create.msg.d.ts.map +1 -0
  312. package/dist/messages/public/comments/create.msg.js +36 -0
  313. package/dist/messages/public/comments/create.msg.js.map +1 -0
  314. package/dist/messages/public/comments/list.msg.d.ts +38 -1
  315. package/dist/messages/public/comments/list.msg.js +20 -5
  316. package/dist/messages/public/comments/list.msg.js.map +1 -1
  317. package/dist/messages/public/comments/recent.msg.d.ts +31 -1
  318. package/dist/messages/public/comments/recent.msg.js +12 -5
  319. package/dist/messages/public/comments/recent.msg.js.map +1 -1
  320. package/dist/messages/public/friend-links/list.msg.d.ts +12 -1
  321. package/dist/messages/public/friend-links/list.msg.js +4 -7
  322. package/dist/messages/public/friend-links/list.msg.js.map +1 -1
  323. package/dist/messages/public/pages/list.msg.d.ts +22 -1
  324. package/dist/messages/public/pages/list.msg.js +4 -7
  325. package/dist/messages/public/pages/list.msg.js.map +1 -1
  326. package/dist/messages/public/pages/read.msg.d.ts +25 -1
  327. package/dist/messages/public/pages/read.msg.js +4 -7
  328. package/dist/messages/public/pages/read.msg.js.map +1 -1
  329. package/dist/messages/public/posts/archive.msg.d.ts +45 -1
  330. package/dist/messages/public/posts/archive.msg.js +4 -7
  331. package/dist/messages/public/posts/archive.msg.js.map +1 -1
  332. package/dist/messages/public/posts/connections.msg.d.ts +77 -1
  333. package/dist/messages/public/posts/connections.msg.js +4 -7
  334. package/dist/messages/public/posts/connections.msg.js.map +1 -1
  335. package/dist/messages/public/posts/list.msg.d.ts +40 -1
  336. package/dist/messages/public/posts/list.msg.js +19 -5
  337. package/dist/messages/public/posts/list.msg.js.map +1 -1
  338. package/dist/messages/public/posts/open.msg.d.ts +43 -1
  339. package/dist/messages/public/posts/open.msg.js +12 -5
  340. package/dist/messages/public/posts/open.msg.js.map +1 -1
  341. package/dist/messages/public/posts/read.msg.d.ts +33 -1
  342. package/dist/messages/public/posts/read.msg.js +4 -7
  343. package/dist/messages/public/posts/read.msg.js.map +1 -1
  344. package/dist/messages/public/posts/search.msg.d.ts +32 -0
  345. package/dist/messages/public/posts/search.msg.d.ts.map +1 -0
  346. package/dist/messages/public/posts/search.msg.js +5 -0
  347. package/dist/messages/public/posts/search.msg.js.map +1 -0
  348. package/dist/messages/public/posts/set-liked.msg.d.ts +23 -0
  349. package/dist/messages/public/posts/set-liked.msg.d.ts.map +1 -0
  350. package/dist/messages/public/posts/set-liked.msg.js +34 -0
  351. package/dist/messages/public/posts/set-liked.msg.js.map +1 -0
  352. package/dist/messages/public/tags/list.msg.d.ts +9 -1
  353. package/dist/messages/public/tags/list.msg.js +4 -7
  354. package/dist/messages/public/tags/list.msg.js.map +1 -1
  355. package/dist/messages/resources/event-catalog.msg.d.ts +7 -0
  356. package/dist/messages/resources/event-catalog.msg.d.ts.map +1 -0
  357. package/dist/messages/resources/event-catalog.msg.js +6 -0
  358. package/dist/messages/resources/event-catalog.msg.js.map +1 -0
  359. package/dist/messages/resources/theme-authoring-contract.msg.d.ts +7 -0
  360. package/dist/messages/resources/theme-authoring-contract.msg.d.ts.map +1 -0
  361. package/dist/messages/resources/theme-authoring-contract.msg.js +6 -0
  362. package/dist/messages/resources/theme-authoring-contract.msg.js.map +1 -0
  363. package/dist/messages/{browser/dispatch.msg.d.ts → sitemap/entries.msg.d.ts} +1 -1
  364. package/dist/messages/sitemap/entries.msg.d.ts.map +1 -0
  365. package/dist/messages/sitemap/entries.msg.js +9 -0
  366. package/dist/messages/sitemap/entries.msg.js.map +1 -0
  367. package/dist/messages/user-context.d.ts +21 -0
  368. package/dist/messages/user-context.d.ts.map +1 -0
  369. package/dist/messages/user-context.js +47 -0
  370. package/dist/messages/user-context.js.map +1 -0
  371. package/dist/migrations/index.d.ts +2 -0
  372. package/dist/migrations/index.d.ts.map +1 -1
  373. package/dist/migrations/index.js +6 -0
  374. package/dist/migrations/index.js.map +1 -1
  375. package/dist/models/blog-resource-documents.d.ts +33 -0
  376. package/dist/models/blog-resource-documents.d.ts.map +1 -0
  377. package/dist/models/blog-resource-documents.js +52 -0
  378. package/dist/models/blog-resource-documents.js.map +1 -0
  379. package/dist/models/management/approve-comment.model.d.ts +23 -0
  380. package/dist/models/management/approve-comment.model.d.ts.map +1 -0
  381. package/dist/models/management/approve-comment.model.js +14 -0
  382. package/dist/models/management/approve-comment.model.js.map +1 -0
  383. package/dist/models/management/archive-page.model.d.ts +21 -0
  384. package/dist/models/management/archive-page.model.d.ts.map +1 -0
  385. package/dist/models/management/archive-page.model.js +14 -0
  386. package/dist/models/management/archive-page.model.js.map +1 -0
  387. package/dist/models/management/archive-post.model.d.ts +28 -0
  388. package/dist/models/management/archive-post.model.d.ts.map +1 -0
  389. package/dist/models/management/archive-post.model.js +14 -0
  390. package/dist/models/management/archive-post.model.js.map +1 -0
  391. package/dist/models/management/audit-post-content.model.d.ts +21 -0
  392. package/dist/models/management/audit-post-content.model.d.ts.map +1 -0
  393. package/dist/models/management/audit-post-content.model.js +12 -0
  394. package/dist/models/management/audit-post-content.model.js.map +1 -0
  395. package/dist/models/management/create-category.model.d.ts +17 -0
  396. package/dist/models/management/create-category.model.d.ts.map +1 -0
  397. package/dist/models/management/create-category.model.js +14 -0
  398. package/dist/models/management/create-category.model.js.map +1 -0
  399. package/dist/models/management/create-friend-link.model.d.ts +19 -0
  400. package/dist/models/management/create-friend-link.model.d.ts.map +1 -0
  401. package/dist/models/management/create-friend-link.model.js +14 -0
  402. package/dist/models/management/create-friend-link.model.js.map +1 -0
  403. package/dist/models/management/create-page.model.d.ts +21 -0
  404. package/dist/models/management/create-page.model.d.ts.map +1 -0
  405. package/dist/models/management/create-page.model.js +14 -0
  406. package/dist/models/management/create-page.model.js.map +1 -0
  407. package/dist/models/management/create-post.model.d.ts +28 -0
  408. package/dist/models/management/create-post.model.d.ts.map +1 -0
  409. package/dist/models/management/create-post.model.js +14 -0
  410. package/dist/models/management/create-post.model.js.map +1 -0
  411. package/dist/models/management/create-tag.model.d.ts +15 -0
  412. package/dist/models/management/create-tag.model.d.ts.map +1 -0
  413. package/dist/models/management/create-tag.model.js +14 -0
  414. package/dist/models/management/create-tag.model.js.map +1 -0
  415. package/dist/models/management/delete-category.model.d.ts +10 -0
  416. package/dist/models/management/delete-category.model.d.ts.map +1 -0
  417. package/dist/models/management/delete-category.model.js +13 -0
  418. package/dist/models/management/delete-category.model.js.map +1 -0
  419. package/dist/models/management/delete-comment.model.d.ts +10 -0
  420. package/dist/models/management/delete-comment.model.d.ts.map +1 -0
  421. package/dist/models/management/delete-comment.model.js +13 -0
  422. package/dist/models/management/delete-comment.model.js.map +1 -0
  423. package/dist/models/management/delete-friend-link.model.d.ts +10 -0
  424. package/dist/models/management/delete-friend-link.model.d.ts.map +1 -0
  425. package/dist/models/management/delete-friend-link.model.js +13 -0
  426. package/dist/models/management/delete-friend-link.model.js.map +1 -0
  427. package/dist/models/management/delete-page.model.d.ts +10 -0
  428. package/dist/models/management/delete-page.model.d.ts.map +1 -0
  429. package/dist/models/management/delete-page.model.js +13 -0
  430. package/dist/models/management/delete-page.model.js.map +1 -0
  431. package/dist/models/management/delete-post.model.d.ts +10 -0
  432. package/dist/models/management/delete-post.model.d.ts.map +1 -0
  433. package/dist/models/management/delete-post.model.js +13 -0
  434. package/dist/models/management/delete-post.model.js.map +1 -0
  435. package/dist/models/management/delete-tag.model.d.ts +10 -0
  436. package/dist/models/management/delete-tag.model.d.ts.map +1 -0
  437. package/dist/models/management/delete-tag.model.js +13 -0
  438. package/dist/models/management/delete-tag.model.js.map +1 -0
  439. package/dist/models/management/disable-friend-link.model.d.ts +19 -0
  440. package/dist/models/management/disable-friend-link.model.d.ts.map +1 -0
  441. package/dist/models/management/disable-friend-link.model.js +14 -0
  442. package/dist/models/management/disable-friend-link.model.js.map +1 -0
  443. package/dist/models/management/enable-friend-link.model.d.ts +19 -0
  444. package/dist/models/management/enable-friend-link.model.d.ts.map +1 -0
  445. package/dist/models/management/enable-friend-link.model.js +14 -0
  446. package/dist/models/management/enable-friend-link.model.js.map +1 -0
  447. package/dist/models/management/list-category.model.d.ts +18 -0
  448. package/dist/models/management/list-category.model.d.ts.map +1 -0
  449. package/dist/models/management/list-category.model.js +13 -0
  450. package/dist/models/management/list-category.model.js.map +1 -0
  451. package/dist/models/management/list-comment.model.d.ts +24 -0
  452. package/dist/models/management/list-comment.model.d.ts.map +1 -0
  453. package/dist/models/management/list-comment.model.js +13 -0
  454. package/dist/models/management/list-comment.model.js.map +1 -0
  455. package/dist/models/management/list-friend-link.model.d.ts +20 -0
  456. package/dist/models/management/list-friend-link.model.d.ts.map +1 -0
  457. package/dist/models/management/list-friend-link.model.js +16 -0
  458. package/dist/models/management/list-friend-link.model.js.map +1 -0
  459. package/dist/models/management/list-page.model.d.ts +22 -0
  460. package/dist/models/management/list-page.model.d.ts.map +1 -0
  461. package/dist/models/management/list-page.model.js +13 -0
  462. package/dist/models/management/list-page.model.js.map +1 -0
  463. package/dist/models/management/list-post-archive.model.d.ts +30 -0
  464. package/dist/models/management/list-post-archive.model.d.ts.map +1 -0
  465. package/dist/models/management/list-post-archive.model.js +18 -0
  466. package/dist/models/management/list-post-archive.model.js.map +1 -0
  467. package/dist/models/management/list-post.model.d.ts +29 -0
  468. package/dist/models/management/list-post.model.d.ts.map +1 -0
  469. package/dist/models/management/list-post.model.js +13 -0
  470. package/dist/models/management/list-post.model.js.map +1 -0
  471. package/dist/models/management/list-tag.model.d.ts +16 -0
  472. package/dist/models/management/list-tag.model.d.ts.map +1 -0
  473. package/dist/models/management/list-tag.model.js +13 -0
  474. package/dist/models/management/list-tag.model.js.map +1 -0
  475. package/dist/models/management/list-theme.model.d.ts +3 -0
  476. package/dist/models/management/list-theme.model.d.ts.map +1 -0
  477. package/dist/models/management/list-theme.model.js +12 -0
  478. package/dist/models/management/list-theme.model.js.map +1 -0
  479. package/dist/models/management/publish-page.model.d.ts +21 -0
  480. package/dist/models/management/publish-page.model.d.ts.map +1 -0
  481. package/dist/models/management/publish-page.model.js +14 -0
  482. package/dist/models/management/publish-page.model.js.map +1 -0
  483. package/dist/models/management/publish-post.model.d.ts +28 -0
  484. package/dist/models/management/publish-post.model.d.ts.map +1 -0
  485. package/dist/models/management/publish-post.model.js +14 -0
  486. package/dist/models/management/publish-post.model.js.map +1 -0
  487. package/dist/models/management/read-category.model.d.ts +17 -0
  488. package/dist/models/management/read-category.model.d.ts.map +1 -0
  489. package/dist/models/management/read-category.model.js +14 -0
  490. package/dist/models/management/read-category.model.js.map +1 -0
  491. package/dist/models/management/read-comment.model.d.ts +23 -0
  492. package/dist/models/management/read-comment.model.d.ts.map +1 -0
  493. package/dist/models/management/read-comment.model.js +14 -0
  494. package/dist/models/management/read-comment.model.js.map +1 -0
  495. package/dist/models/management/read-friend-link.model.d.ts +19 -0
  496. package/dist/models/management/read-friend-link.model.d.ts.map +1 -0
  497. package/dist/models/management/read-friend-link.model.js +14 -0
  498. package/dist/models/management/read-friend-link.model.js.map +1 -0
  499. package/dist/models/management/read-page.model.d.ts +21 -0
  500. package/dist/models/management/read-page.model.d.ts.map +1 -0
  501. package/dist/models/management/read-page.model.js +14 -0
  502. package/dist/models/management/read-page.model.js.map +1 -0
  503. package/dist/models/management/read-post.model.d.ts +28 -0
  504. package/dist/models/management/read-post.model.d.ts.map +1 -0
  505. package/dist/models/management/read-post.model.js +14 -0
  506. package/dist/models/management/read-post.model.js.map +1 -0
  507. package/dist/models/management/read-tag.model.d.ts +15 -0
  508. package/dist/models/management/read-tag.model.d.ts.map +1 -0
  509. package/dist/models/management/read-tag.model.js +14 -0
  510. package/dist/models/management/read-tag.model.js.map +1 -0
  511. package/dist/models/management/read-theme-selection.model.d.ts +8 -0
  512. package/dist/models/management/read-theme-selection.model.d.ts.map +1 -0
  513. package/dist/models/management/read-theme-selection.model.js +12 -0
  514. package/dist/models/management/read-theme-selection.model.js.map +1 -0
  515. package/dist/models/management/read-theme-status.model.d.ts +3 -0
  516. package/dist/models/management/read-theme-status.model.d.ts.map +1 -0
  517. package/dist/models/management/read-theme-status.model.js +12 -0
  518. package/dist/models/management/read-theme-status.model.js.map +1 -0
  519. package/dist/models/management/reject-comment.model.d.ts +23 -0
  520. package/dist/models/management/reject-comment.model.d.ts.map +1 -0
  521. package/dist/models/management/reject-comment.model.js +14 -0
  522. package/dist/models/management/reject-comment.model.js.map +1 -0
  523. package/dist/models/management/reply-comment.model.d.ts +23 -0
  524. package/dist/models/management/reply-comment.model.d.ts.map +1 -0
  525. package/dist/models/management/reply-comment.model.js +14 -0
  526. package/dist/models/management/reply-comment.model.js.map +1 -0
  527. package/dist/models/management/search-post.model.d.ts +27 -0
  528. package/dist/models/management/search-post.model.d.ts.map +1 -0
  529. package/dist/models/management/search-post.model.js +18 -0
  530. package/dist/models/management/search-post.model.js.map +1 -0
  531. package/dist/models/management/select-theme.model.d.ts +3 -0
  532. package/dist/models/management/select-theme.model.d.ts.map +1 -0
  533. package/dist/models/management/select-theme.model.js +11 -0
  534. package/dist/models/management/select-theme.model.js.map +1 -0
  535. package/dist/models/management/update-category.model.d.ts +17 -0
  536. package/dist/models/management/update-category.model.d.ts.map +1 -0
  537. package/dist/models/management/update-category.model.js +14 -0
  538. package/dist/models/management/update-category.model.js.map +1 -0
  539. package/dist/models/management/update-friend-link.model.d.ts +19 -0
  540. package/dist/models/management/update-friend-link.model.d.ts.map +1 -0
  541. package/dist/models/management/update-friend-link.model.js +14 -0
  542. package/dist/models/management/update-friend-link.model.js.map +1 -0
  543. package/dist/models/management/update-page.model.d.ts +21 -0
  544. package/dist/models/management/update-page.model.d.ts.map +1 -0
  545. package/dist/models/management/update-page.model.js +14 -0
  546. package/dist/models/management/update-page.model.js.map +1 -0
  547. package/dist/models/management/update-post.model.d.ts +28 -0
  548. package/dist/models/management/update-post.model.d.ts.map +1 -0
  549. package/dist/models/management/update-post.model.js +14 -0
  550. package/dist/models/management/update-post.model.js.map +1 -0
  551. package/dist/models/management/update-tag.model.d.ts +15 -0
  552. package/dist/models/management/update-tag.model.d.ts.map +1 -0
  553. package/dist/models/management/update-tag.model.js +14 -0
  554. package/dist/models/management/update-tag.model.js.map +1 -0
  555. package/dist/models/management-projection.d.ts +101 -0
  556. package/dist/models/management-projection.d.ts.map +1 -0
  557. package/dist/models/management-projection.js +79 -0
  558. package/dist/models/management-projection.js.map +1 -0
  559. package/dist/models/public/create-comment.model.d.ts +24 -0
  560. package/dist/models/public/create-comment.model.d.ts.map +1 -0
  561. package/dist/models/public/create-comment.model.js +12 -0
  562. package/dist/models/public/create-comment.model.js.map +1 -0
  563. package/dist/models/public/list-categories.model.d.ts +14 -0
  564. package/dist/models/public/list-categories.model.d.ts.map +1 -0
  565. package/dist/models/public/list-categories.model.js +11 -0
  566. package/dist/models/public/list-categories.model.js.map +1 -0
  567. package/dist/models/public/list-comments.model.d.ts +13 -0
  568. package/dist/models/public/list-comments.model.d.ts.map +1 -0
  569. package/dist/models/public/list-comments.model.js +16 -0
  570. package/dist/models/public/list-comments.model.js.map +1 -0
  571. package/dist/models/public/list-friend-links.model.d.ts +14 -0
  572. package/dist/models/public/list-friend-links.model.d.ts.map +1 -0
  573. package/dist/models/public/list-friend-links.model.js +11 -0
  574. package/dist/models/public/list-friend-links.model.js.map +1 -0
  575. package/dist/models/public/list-pages.model.d.ts +16 -0
  576. package/dist/models/public/list-pages.model.d.ts.map +1 -0
  577. package/dist/models/public/list-pages.model.js +11 -0
  578. package/dist/models/public/list-pages.model.js.map +1 -0
  579. package/dist/models/public/list-post-archive.model.d.ts +36 -0
  580. package/dist/models/public/list-post-archive.model.d.ts.map +1 -0
  581. package/dist/models/public/list-post-archive.model.js +11 -0
  582. package/dist/models/public/list-post-archive.model.js.map +1 -0
  583. package/dist/models/public/list-posts.model.d.ts +31 -0
  584. package/dist/models/public/list-posts.model.d.ts.map +1 -0
  585. package/dist/models/public/list-posts.model.js +17 -0
  586. package/dist/models/public/list-posts.model.js.map +1 -0
  587. package/dist/models/public/list-recent-comments.model.d.ts +10 -0
  588. package/dist/models/public/list-recent-comments.model.d.ts.map +1 -0
  589. package/dist/models/public/list-recent-comments.model.js +15 -0
  590. package/dist/models/public/list-recent-comments.model.js.map +1 -0
  591. package/dist/models/public/list-tags.model.d.ts +11 -0
  592. package/dist/models/public/list-tags.model.d.ts.map +1 -0
  593. package/dist/models/public/list-tags.model.js +11 -0
  594. package/dist/models/public/list-tags.model.js.map +1 -0
  595. package/dist/models/public/open-post.model.d.ts +38 -0
  596. package/dist/models/public/open-post.model.d.ts.map +1 -0
  597. package/dist/models/public/open-post.model.js +13 -0
  598. package/dist/models/public/open-post.model.js.map +1 -0
  599. package/dist/models/public/project-comments.model.d.ts +27 -0
  600. package/dist/models/public/project-comments.model.d.ts.map +1 -0
  601. package/dist/models/public/project-comments.model.js +12 -0
  602. package/dist/models/public/project-comments.model.js.map +1 -0
  603. package/dist/models/public/project-recent-comments.model.d.ts +31 -0
  604. package/dist/models/public/project-recent-comments.model.d.ts.map +1 -0
  605. package/dist/models/public/project-recent-comments.model.js +12 -0
  606. package/dist/models/public/project-recent-comments.model.js.map +1 -0
  607. package/dist/models/public/public-model-inputs.d.ts +99 -0
  608. package/dist/models/public/public-model-inputs.d.ts.map +1 -0
  609. package/dist/models/public/public-model-inputs.js +102 -0
  610. package/dist/models/public/public-model-inputs.js.map +1 -0
  611. package/dist/models/public/read-page.model.d.ts +22 -0
  612. package/dist/models/public/read-page.model.d.ts.map +1 -0
  613. package/dist/models/public/read-page.model.js +12 -0
  614. package/dist/models/public/read-page.model.js.map +1 -0
  615. package/dist/models/public/read-post-connections.model.d.ts +76 -0
  616. package/dist/models/public/read-post-connections.model.d.ts.map +1 -0
  617. package/dist/models/public/read-post-connections.model.js +12 -0
  618. package/dist/models/public/read-post-connections.model.js.map +1 -0
  619. package/dist/models/public/read-post.model.d.ts +33 -0
  620. package/dist/models/public/read-post.model.d.ts.map +1 -0
  621. package/dist/models/public/read-post.model.js +12 -0
  622. package/dist/models/public/read-post.model.js.map +1 -0
  623. package/dist/models/public/search-posts.model.d.ts +29 -0
  624. package/dist/models/public/search-posts.model.d.ts.map +1 -0
  625. package/dist/models/public/search-posts.model.js +11 -0
  626. package/dist/models/public/search-posts.model.js.map +1 -0
  627. package/dist/models/public/set-post-liked.model.d.ts +10 -0
  628. package/dist/models/public/set-post-liked.model.d.ts.map +1 -0
  629. package/dist/models/public/set-post-liked.model.js +12 -0
  630. package/dist/models/public/set-post-liked.model.js.map +1 -0
  631. package/dist/models/read-event-catalog.model.d.ts +3 -0
  632. package/dist/models/read-event-catalog.model.d.ts.map +1 -0
  633. package/dist/models/read-event-catalog.model.js +9 -0
  634. package/dist/models/read-event-catalog.model.js.map +1 -0
  635. package/dist/models/read-theme-authoring-contract.model.d.ts +33 -0
  636. package/dist/models/read-theme-authoring-contract.model.d.ts.map +1 -0
  637. package/dist/models/read-theme-authoring-contract.model.js +9 -0
  638. package/dist/models/read-theme-authoring-contract.model.js.map +1 -0
  639. package/dist/persistence/category-store.d.ts.map +1 -1
  640. package/dist/persistence/category-store.js +28 -11
  641. package/dist/persistence/category-store.js.map +1 -1
  642. package/dist/persistence/comment-store.d.ts.map +1 -1
  643. package/dist/persistence/comment-store.js +61 -20
  644. package/dist/persistence/comment-store.js.map +1 -1
  645. package/dist/persistence/entities.d.ts.map +1 -1
  646. package/dist/persistence/entities.js +15 -3
  647. package/dist/persistence/entities.js.map +1 -1
  648. package/dist/persistence/friend-link-store.d.ts.map +1 -1
  649. package/dist/persistence/friend-link-store.js +24 -7
  650. package/dist/persistence/friend-link-store.js.map +1 -1
  651. package/dist/persistence/page-store.d.ts +12 -0
  652. package/dist/persistence/page-store.d.ts.map +1 -1
  653. package/dist/persistence/page-store.js +33 -0
  654. package/dist/persistence/page-store.js.map +1 -1
  655. package/dist/persistence/post-store.d.ts +14 -12
  656. package/dist/persistence/post-store.d.ts.map +1 -1
  657. package/dist/persistence/post-store.js +240 -62
  658. package/dist/persistence/post-store.js.map +1 -1
  659. package/dist/persistence/tag-store.d.ts.map +1 -1
  660. package/dist/persistence/tag-store.js +23 -8
  661. package/dist/persistence/tag-store.js.map +1 -1
  662. package/dist/services/application.service.d.ts +6 -2
  663. package/dist/services/application.service.d.ts.map +1 -1
  664. package/dist/services/application.service.js +13 -5
  665. package/dist/services/application.service.js.map +1 -1
  666. package/dist/services/blog-runtime.service.d.ts +4 -4
  667. package/dist/services/blog-runtime.service.d.ts.map +1 -1
  668. package/dist/services/blog-runtime.service.js +11 -15
  669. package/dist/services/blog-runtime.service.js.map +1 -1
  670. package/dist/services/blog.boot.d.ts +1 -1
  671. package/dist/services/blog.boot.js +7 -4
  672. package/dist/services/blog.boot.js.map +1 -1
  673. package/dist/services/config.service.js +1 -1
  674. package/dist/services/config.service.js.map +1 -1
  675. package/dist/services/database.service.js +18 -3
  676. package/dist/services/database.service.js.map +1 -1
  677. package/dist/services/mcp-provider.service.js +3 -6
  678. package/dist/services/mcp-provider.service.js.map +1 -1
  679. package/dist/services/sitemap-provider.service.d.ts +4 -0
  680. package/dist/services/sitemap-provider.service.d.ts.map +1 -0
  681. package/dist/services/sitemap-provider.service.js +26 -0
  682. package/dist/services/sitemap-provider.service.js.map +1 -0
  683. package/dist/services/theme-control.service.js +24 -9
  684. package/dist/services/theme-control.service.js.map +1 -1
  685. package/dist/sitemap/blog-sitemap-provider.d.ts +34 -0
  686. package/dist/sitemap/blog-sitemap-provider.d.ts.map +1 -0
  687. package/dist/sitemap/blog-sitemap-provider.js +116 -0
  688. package/dist/sitemap/blog-sitemap-provider.js.map +1 -0
  689. package/dist/themes/theme-catalog.d.ts.map +1 -1
  690. package/dist/themes/theme-catalog.js +43 -26
  691. package/dist/themes/theme-catalog.js.map +1 -1
  692. package/dist/themes/theme-control.d.ts.map +1 -1
  693. package/dist/themes/theme-control.js +17 -7
  694. package/dist/themes/theme-control.js.map +1 -1
  695. package/dist/themes/theme-discovery-runtime.d.ts.map +1 -1
  696. package/dist/themes/theme-discovery-runtime.js +17 -7
  697. package/dist/themes/theme-discovery-runtime.js.map +1 -1
  698. package/dist/themes/theme-generation-store.d.ts.map +1 -1
  699. package/dist/themes/theme-generation-store.js +10 -5
  700. package/dist/themes/theme-generation-store.js.map +1 -1
  701. package/dist/themes/theme-selection-publisher.d.ts.map +1 -1
  702. package/dist/themes/theme-selection-publisher.js +11 -5
  703. package/dist/themes/theme-selection-publisher.js.map +1 -1
  704. package/package.json +24 -20
  705. package/dist/blog/micro-user-directory.d.ts +0 -11
  706. package/dist/blog/micro-user-directory.d.ts.map +0 -1
  707. package/dist/blog/micro-user-directory.js +0 -18
  708. package/dist/blog/micro-user-directory.js.map +0 -1
  709. package/dist/blog/public-blog-micro.d.ts +0 -291
  710. package/dist/blog/public-blog-micro.d.ts.map +0 -1
  711. package/dist/blog/public-blog-micro.js +0 -71
  712. package/dist/blog/public-blog-micro.js.map +0 -1
  713. package/dist/browser-api/dispatch-stream.d.ts +0 -5
  714. package/dist/browser-api/dispatch-stream.d.ts.map +0 -1
  715. package/dist/browser-api/dispatch-stream.js +0 -4
  716. package/dist/browser-api/dispatch-stream.js.map +0 -1
  717. package/dist/browser-api/dispatcher.d.ts +0 -15
  718. package/dist/browser-api/dispatcher.d.ts.map +0 -1
  719. package/dist/browser-api/dispatcher.js +0 -145
  720. package/dist/browser-api/dispatcher.js.map +0 -1
  721. package/dist/browser-api/provider-publisher.d.ts +0 -24
  722. package/dist/browser-api/provider-publisher.d.ts.map +0 -1
  723. package/dist/browser-api/provider-publisher.js +0 -107
  724. package/dist/browser-api/provider-publisher.js.map +0 -1
  725. package/dist/messages/browser/dispatch.msg.d.ts.map +0 -1
  726. package/dist/messages/browser/dispatch.msg.js +0 -9
  727. package/dist/messages/browser/dispatch.msg.js.map +0 -1
  728. package/dist/services/browser-api-provider.service.d.ts +0 -4
  729. package/dist/services/browser-api-provider.service.d.ts.map +0 -1
  730. package/dist/services/browser-api-provider.service.js +0 -25
  731. package/dist/services/browser-api-provider.service.js.map +0 -1
@@ -1,145 +0,0 @@
1
- import { browserApiFailure, browserApiSuccess } from '@zlooks.cn/browser-api';
2
- import { BLOG_BROWSER_API_ERROR_CODES, parseBlogBrowserApiRequest, parseBlogBrowserApiResponse, } from '../contracts/public-api.js';
3
- import { BlogConflictError, BlogCursorError, BlogNotFoundError } from '../blog/errors.js';
4
- import { z } from 'zod';
5
- const slugPattern = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
6
- const postSlug = z.string().min(1).max(200).regex(slugPattern);
7
- const taxonomySlug = z.string().min(1).max(120).regex(slugPattern);
8
- const postListQuerySchema = z.strictObject({
9
- limit: z.string().regex(/^(?:[1-9]|[1-9][0-9]|100)$/).transform(Number).default(20),
10
- cursor: z.uuid().optional(),
11
- page: z.string().regex(/^(?:[1-9]|[1-9][0-9]{1,3}|10000)$/).transform(Number).optional(),
12
- category: taxonomySlug.optional(), tag: taxonomySlug.optional(),
13
- }).refine((query) => !(query.cursor && query.page), { message: 'cursor and page are mutually exclusive' });
14
- const commentListQuerySchema = z.strictObject({
15
- limit: z.string().regex(/^(?:[1-9]|[1-9][0-9]|100)$/).transform(Number).default(20),
16
- cursor: z.uuid().optional(),
17
- order: z.enum(['desc', 'asc']).default('desc'),
18
- });
19
- const searchQuerySchema = z.strictObject({
20
- q: z.string().trim().min(2).max(100),
21
- limit: z.string().regex(/^(?:[1-9]|1[0-9]|20)$/).transform(Number).default(10),
22
- });
23
- const emptyQuerySchema = z.strictObject({});
24
- export class BlogBrowserApiDispatcher {
25
- options;
26
- constructor(options) {
27
- this.options = options;
28
- }
29
- async dispatch(input, invocation) {
30
- const { signal } = invocation;
31
- let request;
32
- try {
33
- request = parseBlogBrowserApiRequest(input);
34
- }
35
- catch {
36
- return failure(400, BLOG_BROWSER_API_ERROR_CODES.requestRejected, '请求格式无效,请检查后重试');
37
- }
38
- if (request.method !== 'GET' && !sameOrigin(request.origin, this.options.readPublicOrigin())) {
39
- return failure(403, BLOG_BROWSER_API_ERROR_CODES.requestRejected, '请求来源无效,请刷新页面后重试');
40
- }
41
- try {
42
- return await this.route(request, invocation);
43
- }
44
- catch (error) {
45
- if (signal?.aborted)
46
- throw signal.reason ?? error;
47
- if (error instanceof BlogNotFoundError) {
48
- return failure(404, BLOG_BROWSER_API_ERROR_CODES.postNotFound, '文章不存在或尚未发布');
49
- }
50
- if (error instanceof BlogCursorError) {
51
- return failure(400, BLOG_BROWSER_API_ERROR_CODES.requestRejected, '分页游标已失效,请重新加载');
52
- }
53
- if (error instanceof z.ZodError || error instanceof URIError) {
54
- return failure(400, BLOG_BROWSER_API_ERROR_CODES.requestRejected, '查询参数无效,请检查后重试');
55
- }
56
- if (error instanceof BlogConflictError) {
57
- if (isLikeMutation(request)) {
58
- return failure(409, BLOG_BROWSER_API_ERROR_CODES.engagementRejected, '当前文章无法点赞');
59
- }
60
- return failure(409, BLOG_BROWSER_API_ERROR_CODES.commentRejected, '当前文章无法接收评论');
61
- }
62
- this.options.onError?.(error);
63
- return failure(500, BLOG_BROWSER_API_ERROR_CODES.requestRejected, '服务暂时不可用,请稍后重试');
64
- }
65
- }
66
- async route(request, invocation) {
67
- const { signal } = invocation;
68
- if (request.method === 'GET' && request.path === '/api/blog/categories') {
69
- emptyQuerySchema.parse(request.query ?? {});
70
- return success(await this.options.blog.listCategories(signal));
71
- }
72
- if (request.method === 'GET' && request.path === '/api/blog/tags') {
73
- emptyQuerySchema.parse(request.query ?? {});
74
- return success(await this.options.blog.listTags(signal));
75
- }
76
- if (request.method === 'GET' && request.path === '/api/blog/friend-links') {
77
- emptyQuerySchema.parse(request.query ?? {});
78
- return success(await this.options.blog.listFriendLinks(signal));
79
- }
80
- if (request.method === 'GET' && request.path === '/api/blog/search') {
81
- const query = searchQuerySchema.parse(request.query ?? {});
82
- return success(await this.options.blog.searchPosts({ query: query.q, limit: query.limit }, signal));
83
- }
84
- if (request.method === 'GET' && request.path === '/api/blog/posts') {
85
- const query = postListQuerySchema.parse(request.query ?? {});
86
- return success(await this.options.blog.listPosts(query, signal));
87
- }
88
- const comments = /^\/api\/blog\/posts\/([^/]+)\/comments$/.exec(request.path);
89
- if (comments?.[1])
90
- return this.comments(request, decodeSlug(comments[1]), invocation);
91
- const likes = /^\/api\/blog\/likes\/([^/]+)$/.exec(request.path);
92
- if (likes?.[1] && (request.method === 'PUT' || request.method === 'DELETE')) {
93
- const result = await this.options.blog.setPostLiked(decodeSlug(likes[1]), request.method === 'PUT', invocation.context, signal);
94
- return result
95
- ? success(result)
96
- : failure(401, BLOG_BROWSER_API_ERROR_CODES.authenticationRequired, '请登录后点赞');
97
- }
98
- const post = /^\/api\/blog\/posts\/([^/]+)$/.exec(request.path);
99
- if (request.method === 'GET' && post?.[1]) {
100
- emptyQuerySchema.parse(request.query ?? {});
101
- const item = await this.options.blog.readPost(decodeSlug(post[1]), signal);
102
- return item ? success(item) : failure(404, BLOG_BROWSER_API_ERROR_CODES.postNotFound, '文章不存在或尚未发布');
103
- }
104
- return failure(404, BLOG_BROWSER_API_ERROR_CODES.routeNotFound, '请求的接口不存在');
105
- }
106
- async comments(request, slug, invocation) {
107
- const { context, signal } = invocation;
108
- if (request.method === 'GET') {
109
- const query = commentListQuerySchema.parse(request.query ?? {});
110
- const comments = await this.options.blog.listComments(slug, query, context, signal);
111
- return comments
112
- ? success(comments)
113
- : failure(404, BLOG_BROWSER_API_ERROR_CODES.postNotFound, '文章不存在或尚未发布');
114
- }
115
- if (request.method !== 'POST') {
116
- return failure(404, BLOG_BROWSER_API_ERROR_CODES.routeNotFound, '请求的接口不存在');
117
- }
118
- const comment = await this.options.blog.createComment(slug, request.body.content, context, signal);
119
- return comment
120
- ? success(comment, 201)
121
- : failure(401, BLOG_BROWSER_API_ERROR_CODES.authenticationRequired, '请登录后发表评论');
122
- }
123
- }
124
- function isLikeMutation(request) {
125
- return (request.method === 'PUT' || request.method === 'DELETE')
126
- && request.path.startsWith('/api/blog/likes/');
127
- }
128
- function success(data, status = 200) {
129
- return parseBlogBrowserApiResponse({ status, body: browserApiSuccess(data) });
130
- }
131
- function failure(status, code, error) {
132
- return parseBlogBrowserApiResponse({ status, body: browserApiFailure(code, error) });
133
- }
134
- function sameOrigin(actual, expected) {
135
- if (!actual)
136
- return false;
137
- try {
138
- return new URL(actual).origin === new URL(expected).origin;
139
- }
140
- catch {
141
- return false;
142
- }
143
- }
144
- function decodeSlug(value) { return postSlug.parse(decodeURIComponent(value)); }
145
- //# sourceMappingURL=dispatcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/browser-api/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { type BrowserApiProviderAnnouncement } from '@zlooks.cn/browser-api';
2
- interface Publication {
3
- update(payload: BrowserApiProviderAnnouncement): Promise<unknown>;
4
- unpublish(): Promise<unknown>;
5
- }
6
- export interface BrowserApiProviderPublisherOptions {
7
- readonly application: {
8
- publish(topic: string, payload: BrowserApiProviderAnnouncement): Promise<Publication>;
9
- };
10
- readonly instanceId: string;
11
- readonly leaseMs: number;
12
- readonly clock?: () => Date;
13
- readonly onError?: (error: unknown) => void;
14
- }
15
- /** Narrow Registry lifecycle adapter; Hile has no Browser JSON discovery runtime. */
16
- export declare class BrowserApiProviderPublisher {
17
- #private;
18
- private readonly options;
19
- constructor(options: BrowserApiProviderPublisherOptions);
20
- start(): Promise<void>;
21
- close(): Promise<void>;
22
- }
23
- export {};
24
- //# sourceMappingURL=provider-publisher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-publisher.d.ts","sourceRoot":"","sources":["../../src/browser-api/provider-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,wBAAwB,CAAC;AAQhC,UAAU,WAAW;IACnB,MAAM,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,WAAW,EAAE;QACpB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;KACvF,CAAC;IACF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,qFAAqF;AACrF,qBAAa,2BAA2B;;IAUnB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAA3C,YAAoC,OAAO,EAAE,kCAAkC,EAK9E;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAU5B;IAWM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAS5B;CAoDF"}
@@ -1,107 +0,0 @@
1
- import { browserApiProviderAnnouncementSchema, browserApiProviderTopic, } from '@zlooks.cn/browser-api';
2
- import { BLOG_BROWSER_API_ERROR_CODES, BLOG_BROWSER_API_OPERATION, BLOG_BROWSER_API_PUBLIC_ROUTES, } from '../contracts/public-api.js';
3
- import { BLOG_PLUGIN_ID, BLOG_SERVICE_NAMESPACE } from '../contracts/identity.js';
4
- const PROVIDER_ID = BLOG_PLUGIN_ID;
5
- /** Narrow Registry lifecycle adapter; Hile has no Browser JSON discovery runtime. */
6
- export class BrowserApiProviderPublisher {
7
- options;
8
- #clock;
9
- #publication;
10
- #timer;
11
- #starting;
12
- #closed = false;
13
- #sequence = -1;
14
- #updating;
15
- #closing;
16
- constructor(options) {
17
- this.options = options;
18
- if (!Number.isSafeInteger(options.leaseMs) || options.leaseMs < 500 || options.leaseMs > 30_000) {
19
- throw new TypeError('Browser API Provider lease must be between 500 and 30000 milliseconds');
20
- }
21
- this.#clock = options.clock ?? (() => new Date());
22
- }
23
- start() {
24
- if (this.#closed)
25
- return Promise.reject(new Error('Blog Browser API Provider publisher is closed'));
26
- if (this.#publication)
27
- return Promise.resolve();
28
- if (this.#starting)
29
- return this.#starting;
30
- const operation = this.#start();
31
- const tracked = operation.finally(() => {
32
- if (this.#starting === tracked)
33
- this.#starting = undefined;
34
- });
35
- this.#starting = tracked;
36
- return tracked;
37
- }
38
- async #start() {
39
- this.#publication = await this.options.application.publish(browserApiProviderTopic(PROVIDER_ID, this.options.instanceId), this.#announcement());
40
- this.#timer = setInterval(() => this.#scheduleRefresh(), Math.max(250, Math.floor(this.options.leaseMs / 2)));
41
- this.#timer.unref();
42
- }
43
- close() {
44
- this.#closed = true;
45
- if (this.#closing)
46
- return this.#closing;
47
- if (!this.#publication && !this.#timer && !this.#starting && !this.#updating)
48
- return Promise.resolve();
49
- const operation = this.#close();
50
- this.#closing = operation;
51
- return operation.finally(() => {
52
- if (this.#closing === operation)
53
- this.#closing = undefined;
54
- });
55
- }
56
- async #close() {
57
- await this.#starting?.catch(() => undefined);
58
- if (this.#timer)
59
- clearInterval(this.#timer);
60
- this.#timer = undefined;
61
- await this.#updating?.catch(() => undefined);
62
- await this.#publication?.unpublish();
63
- this.#publication = undefined;
64
- }
65
- #scheduleRefresh() {
66
- if (this.#updating || !this.#publication)
67
- return;
68
- const operation = this.#refresh();
69
- this.#updating = operation;
70
- void operation.finally(() => {
71
- if (this.#updating === operation)
72
- this.#updating = undefined;
73
- }).catch((error) => this.options.onError?.(error));
74
- }
75
- async #refresh() {
76
- await this.#publication?.update(this.#announcement());
77
- }
78
- #announcement() {
79
- const issuedAt = this.#clock();
80
- this.#sequence = Math.max(this.#sequence + 1, issuedAt.getTime());
81
- return browserApiProviderAnnouncementSchema.parse({
82
- protocol: 'zlooks.browser-api.provider',
83
- providerId: PROVIDER_ID,
84
- instanceId: this.options.instanceId,
85
- namespace: BLOG_SERVICE_NAMESPACE,
86
- operation: BLOG_BROWSER_API_OPERATION,
87
- routes: BLOG_BROWSER_API_PUBLIC_ROUTES,
88
- writableCookieNames: [],
89
- errors: {
90
- invalidRequest: {
91
- code: BLOG_BROWSER_API_ERROR_CODES.requestRejected,
92
- message: '请求格式无效,请检查后重试',
93
- },
94
- unavailable: {
95
- code: BLOG_BROWSER_API_ERROR_CODES.requestRejected,
96
- message: '服务暂时不可用,请稍后重试',
97
- },
98
- },
99
- lease: {
100
- issuedAt: issuedAt.toISOString(),
101
- expiresAt: new Date(issuedAt.getTime() + this.options.leaseMs).toISOString(),
102
- sequence: this.#sequence,
103
- },
104
- });
105
- }
106
- }
107
- //# sourceMappingURL=provider-publisher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-publisher.js","sourceRoot":"","sources":["../../src/browser-api/provider-publisher.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dispatch.msg.d.ts","sourceRoot":"","sources":["../../../src/messages/browser/dispatch.msg.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- import { loadService } from '@hile/core';
2
- import { defineMicroMessage } from '@hile/micro';
3
- import { dispatchBrowserApiFrame } from '../../browser-api/dispatch-stream.js';
4
- import blogRuntimeService from '../../services/blog-runtime.service.js';
5
- export default defineMicroMessage(async function* ({ data, invocation }) {
6
- const runtime = await loadService(blogRuntimeService);
7
- yield* dispatchBrowserApiFrame(runtime.browserApi, data, invocation);
8
- });
9
- //# sourceMappingURL=dispatch.msg.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dispatch.msg.js","sourceRoot":"","sources":["../../../src/messages/browser/dispatch.msg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,kBAAkB,MAAM,wCAAwC,CAAC;AAExE,eAAe,kBAAkB,CAAU,KAAK,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;IAC9E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACtD,KAAK,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC"}
@@ -1,4 +0,0 @@
1
- import { BrowserApiProviderPublisher } from '../browser-api/provider-publisher.js';
2
- declare const _default: import("@hile/core").ServiceRegisterProps<BrowserApiProviderPublisher>;
3
- export default _default;
4
- //# sourceMappingURL=browser-api-provider.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-api-provider.service.d.ts","sourceRoot":"","sources":["../../src/services/browser-api-provider.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC"}
@@ -1,25 +0,0 @@
1
- import { randomBytes } from 'node:crypto';
2
- import { defineService, loadService } from '@hile/core';
3
- import { BrowserApiProviderPublisher } from '../browser-api/provider-publisher.js';
4
- import applicationService from './application.service.js';
5
- import loggerService from './logger.service.js';
6
- const LEASE_MS = 10_000;
7
- export default defineService('zlooks.blog.browser-api-provider', async (shutdown) => {
8
- const [application, logger] = await Promise.all([
9
- loadService(applicationService),
10
- loadService(loggerService),
11
- ]);
12
- const publisher = new BrowserApiProviderPublisher({
13
- application,
14
- instanceId: `blog-${randomBytes(8).toString('hex')}`,
15
- leaseMs: LEASE_MS,
16
- onError: (error) => logger.error({
17
- err: error,
18
- event: 'blog.browser-api-provider.refresh-failed',
19
- }, 'Blog browser API Provider lease refresh failed'),
20
- });
21
- await publisher.start();
22
- shutdown(() => publisher.close());
23
- return publisher;
24
- });
25
- //# sourceMappingURL=browser-api-provider.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-api-provider.service.js","sourceRoot":"","sources":["../../src/services/browser-api-provider.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,kBAAkB,MAAM,0BAA0B,CAAC;AAC1D,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAEhD,MAAM,QAAQ,GAAG,MAAM,CAAC;AAExB,eAAe,aAAa,CAAC,kCAAkC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAClF,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9C,WAAW,CAAC,kBAAkB,CAAC;QAC/B,WAAW,CAAC,aAAa,CAAC;KAC3B,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,IAAI,2BAA2B,CAAC;QAChD,WAAW;QACX,UAAU,EAAE,QAAQ,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACpD,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/B,GAAG,EAAE,KAAK;YACV,KAAK,EAAE,0CAA0C;SAClD,EAAE,gDAAgD,CAAC;KACrD,CAAC,CAAC;IACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IAClC,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CAAC"}