@byline/host-tanstack-start 0.9.3

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 (511) hide show
  1. package/LICENSE +373 -0
  2. package/README.md +48 -0
  3. package/dist/admin-shell/admin-roles/container.d.ts +34 -0
  4. package/dist/admin-shell/admin-roles/container.d.ts.map +1 -0
  5. package/dist/admin-shell/admin-roles/container.js +259 -0
  6. package/dist/admin-shell/admin-roles/container.module.js +17 -0
  7. package/dist/admin-shell/admin-roles/container_module.css +93 -0
  8. package/dist/admin-shell/admin-roles/delete.d.ts +9 -0
  9. package/dist/admin-shell/admin-roles/delete.d.ts.map +1 -0
  10. package/dist/admin-shell/admin-roles/delete.js +107 -0
  11. package/dist/admin-shell/admin-roles/delete.module.js +10 -0
  12. package/dist/admin-shell/admin-roles/delete_module.css +35 -0
  13. package/dist/admin-shell/admin-roles/list.d.ts +25 -0
  14. package/dist/admin-shell/admin-roles/list.d.ts.map +1 -0
  15. package/dist/admin-shell/admin-roles/list.js +292 -0
  16. package/dist/admin-shell/admin-roles/list.module.js +24 -0
  17. package/dist/admin-shell/admin-roles/list_module.css +113 -0
  18. package/dist/admin-shell/admin-users/container.d.ts +18 -0
  19. package/dist/admin-shell/admin-users/container.d.ts.map +1 -0
  20. package/dist/admin-shell/admin-users/container.js +418 -0
  21. package/dist/admin-shell/admin-users/container.module.js +22 -0
  22. package/dist/admin-shell/admin-users/container_module.css +136 -0
  23. package/dist/admin-shell/admin-users/delete.d.ts +9 -0
  24. package/dist/admin-shell/admin-users/delete.d.ts.map +1 -0
  25. package/dist/admin-shell/admin-users/delete.js +115 -0
  26. package/dist/admin-shell/admin-users/delete.module.js +10 -0
  27. package/dist/admin-shell/admin-users/delete_module.css +35 -0
  28. package/dist/admin-shell/admin-users/list.d.ts +13 -0
  29. package/dist/admin-shell/admin-users/list.d.ts.map +1 -0
  30. package/dist/admin-shell/admin-users/list.js +328 -0
  31. package/dist/admin-shell/admin-users/list.module.js +22 -0
  32. package/dist/admin-shell/admin-users/list_module.css +112 -0
  33. package/dist/admin-shell/chrome/admin-app-bar.d.ts +7 -0
  34. package/dist/admin-shell/chrome/admin-app-bar.d.ts.map +1 -0
  35. package/dist/admin-shell/chrome/admin-app-bar.js +71 -0
  36. package/dist/admin-shell/chrome/admin-app-bar.module.js +9 -0
  37. package/dist/admin-shell/chrome/admin-app-bar_module.css +54 -0
  38. package/dist/admin-shell/chrome/admin-layout.module.js +5 -0
  39. package/dist/admin-shell/chrome/admin-layout_module.css +8 -0
  40. package/dist/admin-shell/chrome/branding.d.ts +9 -0
  41. package/dist/admin-shell/chrome/branding.d.ts.map +1 -0
  42. package/dist/admin-shell/chrome/branding.js +17 -0
  43. package/dist/admin-shell/chrome/branding.module.js +6 -0
  44. package/dist/admin-shell/chrome/branding_module.css +11 -0
  45. package/dist/admin-shell/chrome/breadcrumbs/@types.d.ts +6 -0
  46. package/dist/admin-shell/chrome/breadcrumbs/@types.d.ts.map +1 -0
  47. package/dist/admin-shell/chrome/breadcrumbs/@types.js +1 -0
  48. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-client.d.ts +7 -0
  49. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-client.d.ts.map +1 -0
  50. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-client.js +20 -0
  51. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-provider.d.ts +24 -0
  52. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-provider.d.ts.map +1 -0
  53. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs-provider.js +23 -0
  54. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs.d.ts +15 -0
  55. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs.d.ts.map +1 -0
  56. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs.js +77 -0
  57. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs.module.js +12 -0
  58. package/dist/admin-shell/chrome/breadcrumbs/breadcrumbs_module.css +81 -0
  59. package/dist/admin-shell/chrome/byline-logo.d.ts +12 -0
  60. package/dist/admin-shell/chrome/byline-logo.d.ts.map +1 -0
  61. package/dist/admin-shell/chrome/byline-logo.js +178 -0
  62. package/dist/admin-shell/chrome/content.d.ts +24 -0
  63. package/dist/admin-shell/chrome/content.d.ts.map +1 -0
  64. package/dist/admin-shell/chrome/content.js +31 -0
  65. package/dist/admin-shell/chrome/content.module.js +5 -0
  66. package/dist/admin-shell/chrome/content_module.css +10 -0
  67. package/dist/admin-shell/chrome/dashboard.d.ts +14 -0
  68. package/dist/admin-shell/chrome/dashboard.d.ts.map +1 -0
  69. package/dist/admin-shell/chrome/dashboard.js +129 -0
  70. package/dist/admin-shell/chrome/dashboard.module.js +19 -0
  71. package/dist/admin-shell/chrome/dashboard_module.css +175 -0
  72. package/dist/admin-shell/chrome/drawer-toggle.d.ts +9 -0
  73. package/dist/admin-shell/chrome/drawer-toggle.d.ts.map +1 -0
  74. package/dist/admin-shell/chrome/drawer-toggle.js +57 -0
  75. package/dist/admin-shell/chrome/drawer-toggle.module.js +8 -0
  76. package/dist/admin-shell/chrome/drawer-toggle_module.css +21 -0
  77. package/dist/admin-shell/chrome/hamburger.d.ts +10 -0
  78. package/dist/admin-shell/chrome/hamburger.d.ts.map +1 -0
  79. package/dist/admin-shell/chrome/hamburger.js +30 -0
  80. package/dist/admin-shell/chrome/hamburger.module.js +5 -0
  81. package/dist/admin-shell/chrome/hamburger_module.css +7 -0
  82. package/dist/admin-shell/chrome/loose-router.d.ts +33 -0
  83. package/dist/admin-shell/chrome/loose-router.d.ts.map +1 -0
  84. package/dist/admin-shell/chrome/loose-router.js +6 -0
  85. package/dist/admin-shell/chrome/menu-drawer.d.ts +10 -0
  86. package/dist/admin-shell/chrome/menu-drawer.d.ts.map +1 -0
  87. package/dist/admin-shell/chrome/menu-drawer.js +141 -0
  88. package/dist/admin-shell/chrome/menu-drawer.module.js +12 -0
  89. package/dist/admin-shell/chrome/menu-drawer_module.css +137 -0
  90. package/dist/admin-shell/chrome/menu-provider.d.ts +21 -0
  91. package/dist/admin-shell/chrome/menu-provider.d.ts.map +1 -0
  92. package/dist/admin-shell/chrome/menu-provider.js +54 -0
  93. package/dist/admin-shell/chrome/preview-toggle.d.ts +13 -0
  94. package/dist/admin-shell/chrome/preview-toggle.d.ts.map +1 -0
  95. package/dist/admin-shell/chrome/preview-toggle.js +75 -0
  96. package/dist/admin-shell/chrome/route-error.d.ts +22 -0
  97. package/dist/admin-shell/chrome/route-error.d.ts.map +1 -0
  98. package/dist/admin-shell/chrome/route-error.js +119 -0
  99. package/dist/admin-shell/chrome/route-error.module.js +14 -0
  100. package/dist/admin-shell/chrome/route-error_module.css +94 -0
  101. package/dist/admin-shell/chrome/router-pager.d.ts +19 -0
  102. package/dist/admin-shell/chrome/router-pager.d.ts.map +1 -0
  103. package/dist/admin-shell/chrome/router-pager.js +91 -0
  104. package/dist/admin-shell/chrome/sign-in-page.d.ts +19 -0
  105. package/dist/admin-shell/chrome/sign-in-page.d.ts.map +1 -0
  106. package/dist/admin-shell/chrome/sign-in-page.js +20 -0
  107. package/dist/admin-shell/chrome/sign-in-page.module.js +6 -0
  108. package/dist/admin-shell/chrome/sign-in-page_module.css +22 -0
  109. package/dist/admin-shell/chrome/sort-icons.d.ts +10 -0
  110. package/dist/admin-shell/chrome/sort-icons.d.ts.map +1 -0
  111. package/dist/admin-shell/chrome/sort-icons.js +103 -0
  112. package/dist/admin-shell/chrome/th-sortable.d.ts +23 -0
  113. package/dist/admin-shell/chrome/th-sortable.d.ts.map +1 -0
  114. package/dist/admin-shell/chrome/th-sortable.js +75 -0
  115. package/dist/admin-shell/chrome/th-sortable.module.js +10 -0
  116. package/dist/admin-shell/chrome/th-sortable_module.css +37 -0
  117. package/dist/admin-shell/chrome/use-media-query.d.ts +9 -0
  118. package/dist/admin-shell/chrome/use-media-query.d.ts.map +1 -0
  119. package/dist/admin-shell/chrome/use-media-query.js +20 -0
  120. package/dist/admin-shell/chrome/utils.d.ts +12 -0
  121. package/dist/admin-shell/chrome/utils.d.ts.map +1 -0
  122. package/dist/admin-shell/chrome/utils.js +8 -0
  123. package/dist/admin-shell/collections/api.d.ts +28 -0
  124. package/dist/admin-shell/collections/api.d.ts.map +1 -0
  125. package/dist/admin-shell/collections/api.js +51 -0
  126. package/dist/admin-shell/collections/api.module.js +9 -0
  127. package/dist/admin-shell/collections/api_module.css +42 -0
  128. package/dist/admin-shell/collections/create.d.ts +14 -0
  129. package/dist/admin-shell/collections/create.d.ts.map +1 -0
  130. package/dist/admin-shell/collections/create.js +77 -0
  131. package/dist/admin-shell/collections/edit.d.ts +19 -0
  132. package/dist/admin-shell/collections/edit.d.ts.map +1 -0
  133. package/dist/admin-shell/collections/edit.js +279 -0
  134. package/dist/admin-shell/collections/history.d.ts +20 -0
  135. package/dist/admin-shell/collections/history.d.ts.map +1 -0
  136. package/dist/admin-shell/collections/history.js +252 -0
  137. package/dist/admin-shell/collections/history.module.js +18 -0
  138. package/dist/admin-shell/collections/history_module.css +121 -0
  139. package/dist/admin-shell/collections/list.d.ts +16 -0
  140. package/dist/admin-shell/collections/list.d.ts.map +1 -0
  141. package/dist/admin-shell/collections/list.js +253 -0
  142. package/dist/admin-shell/collections/list.module.js +16 -0
  143. package/dist/admin-shell/collections/list_module.css +88 -0
  144. package/dist/admin-shell/collections/preview-link.d.ts +32 -0
  145. package/dist/admin-shell/collections/preview-link.d.ts.map +1 -0
  146. package/dist/admin-shell/collections/preview-link.js +54 -0
  147. package/dist/admin-shell/collections/tanstack-navigation-guard.d.ts +16 -0
  148. package/dist/admin-shell/collections/tanstack-navigation-guard.d.ts.map +1 -0
  149. package/dist/admin-shell/collections/tanstack-navigation-guard.js +19 -0
  150. package/dist/admin-shell/collections/view-menu.d.ts +58 -0
  151. package/dist/admin-shell/collections/view-menu.d.ts.map +1 -0
  152. package/dist/admin-shell/collections/view-menu.js +203 -0
  153. package/dist/admin-shell/collections/view-menu.module.js +11 -0
  154. package/dist/admin-shell/collections/view-menu_module.css +43 -0
  155. package/dist/auth/auth-context.d.ts +38 -0
  156. package/dist/auth/auth-context.d.ts.map +1 -0
  157. package/dist/auth/auth-context.js +57 -0
  158. package/dist/auth/auth-cookies.d.ts +35 -0
  159. package/dist/auth/auth-cookies.d.ts.map +1 -0
  160. package/dist/auth/auth-cookies.js +46 -0
  161. package/dist/auth/preview-cookies.d.ts +20 -0
  162. package/dist/auth/preview-cookies.d.ts.map +1 -0
  163. package/dist/auth/preview-cookies.js +26 -0
  164. package/dist/index.d.ts +43 -0
  165. package/dist/index.d.ts.map +1 -0
  166. package/dist/index.js +1 -0
  167. package/dist/integrations/abilities.d.ts +67 -0
  168. package/dist/integrations/abilities.d.ts.map +1 -0
  169. package/dist/integrations/abilities.js +25 -0
  170. package/dist/integrations/api-utils.d.ts +34 -0
  171. package/dist/integrations/api-utils.d.ts.map +1 -0
  172. package/dist/integrations/api-utils.js +22 -0
  173. package/dist/integrations/byline-admin-services.d.ts +25 -0
  174. package/dist/integrations/byline-admin-services.d.ts.map +1 -0
  175. package/dist/integrations/byline-admin-services.js +26 -0
  176. package/dist/integrations/byline-client.d.ts +22 -0
  177. package/dist/integrations/byline-client.d.ts.map +1 -0
  178. package/dist/integrations/byline-client.js +13 -0
  179. package/dist/integrations/byline-core.d.ts +28 -0
  180. package/dist/integrations/byline-core.d.ts.map +1 -0
  181. package/dist/integrations/byline-core.js +5 -0
  182. package/dist/integrations/byline-field-services.d.ts +19 -0
  183. package/dist/integrations/byline-field-services.d.ts.map +1 -0
  184. package/dist/integrations/byline-field-services.js +14 -0
  185. package/dist/integrations/byline-public-client.d.ts +10 -0
  186. package/dist/integrations/byline-public-client.d.ts.map +1 -0
  187. package/dist/integrations/byline-public-client.js +15 -0
  188. package/dist/integrations/byline-viewer-client.d.ts +21 -0
  189. package/dist/integrations/byline-viewer-client.d.ts.map +1 -0
  190. package/dist/integrations/byline-viewer-client.js +39 -0
  191. package/dist/integrations/start-errors.d.ts +23 -0
  192. package/dist/integrations/start-errors.d.ts.map +1 -0
  193. package/dist/integrations/start-errors.js +32 -0
  194. package/dist/routes/create-admin-account-route.d.ts +9 -0
  195. package/dist/routes/create-admin-account-route.d.ts.map +1 -0
  196. package/dist/routes/create-admin-account-route.js +68 -0
  197. package/dist/routes/create-admin-dashboard-route.d.ts +9 -0
  198. package/dist/routes/create-admin-dashboard-route.d.ts.map +1 -0
  199. package/dist/routes/create-admin-dashboard-route.js +44 -0
  200. package/dist/routes/create-admin-layout-route.d.ts +14 -0
  201. package/dist/routes/create-admin-layout-route.d.ts.map +1 -0
  202. package/dist/routes/create-admin-layout-route.js +64 -0
  203. package/dist/routes/create-admin-permissions-route.d.ts +9 -0
  204. package/dist/routes/create-admin-permissions-route.d.ts.map +1 -0
  205. package/dist/routes/create-admin-permissions-route.js +39 -0
  206. package/dist/routes/create-admin-role-edit-route.d.ts +9 -0
  207. package/dist/routes/create-admin-role-edit-route.d.ts.map +1 -0
  208. package/dist/routes/create-admin-role-edit-route.js +79 -0
  209. package/dist/routes/create-admin-roles-list-route.d.ts +9 -0
  210. package/dist/routes/create-admin-roles-list-route.d.ts.map +1 -0
  211. package/dist/routes/create-admin-roles-list-route.js +39 -0
  212. package/dist/routes/create-admin-user-edit-route.d.ts +9 -0
  213. package/dist/routes/create-admin-user-edit-route.d.ts.map +1 -0
  214. package/dist/routes/create-admin-user-edit-route.js +86 -0
  215. package/dist/routes/create-admin-users-list-route.d.ts +9 -0
  216. package/dist/routes/create-admin-users-list-route.d.ts.map +1 -0
  217. package/dist/routes/create-admin-users-list-route.js +71 -0
  218. package/dist/routes/create-collection-api-route.d.ts +15 -0
  219. package/dist/routes/create-collection-api-route.d.ts.map +1 -0
  220. package/dist/routes/create-collection-api-route.js +71 -0
  221. package/dist/routes/create-collection-create-route.d.ts +9 -0
  222. package/dist/routes/create-collection-create-route.d.ts.map +1 -0
  223. package/dist/routes/create-collection-create-route.js +53 -0
  224. package/dist/routes/create-collection-edit-route.d.ts +15 -0
  225. package/dist/routes/create-collection-edit-route.d.ts.map +1 -0
  226. package/dist/routes/create-collection-edit-route.js +65 -0
  227. package/dist/routes/create-collection-history-route.d.ts +15 -0
  228. package/dist/routes/create-collection-history-route.d.ts.map +1 -0
  229. package/dist/routes/create-collection-history-route.js +94 -0
  230. package/dist/routes/create-collection-list-route.d.ts +9 -0
  231. package/dist/routes/create-collection-list-route.d.ts.map +1 -0
  232. package/dist/routes/create-collection-list-route.js +130 -0
  233. package/dist/routes/create-sign-in-route.d.ts +9 -0
  234. package/dist/routes/create-sign-in-route.d.ts.map +1 -0
  235. package/dist/routes/create-sign-in-route.js +21 -0
  236. package/dist/routes/index.d.ts +35 -0
  237. package/dist/routes/index.d.ts.map +1 -0
  238. package/dist/routes/index.js +14 -0
  239. package/dist/server-fns/admin-account/change-password.d.ts +30 -0
  240. package/dist/server-fns/admin-account/change-password.d.ts.map +1 -0
  241. package/dist/server-fns/admin-account/change-password.js +13 -0
  242. package/dist/server-fns/admin-account/get.d.ts +31 -0
  243. package/dist/server-fns/admin-account/get.d.ts.map +1 -0
  244. package/dist/server-fns/admin-account/get.js +13 -0
  245. package/dist/server-fns/admin-account/index.d.ts +22 -0
  246. package/dist/server-fns/admin-account/index.d.ts.map +1 -0
  247. package/dist/server-fns/admin-account/index.js +3 -0
  248. package/dist/server-fns/admin-account/update.d.ts +34 -0
  249. package/dist/server-fns/admin-account/update.d.ts.map +1 -0
  250. package/dist/server-fns/admin-account/update.js +13 -0
  251. package/dist/server-fns/admin-permissions/get-role-abilities.d.ts +16 -0
  252. package/dist/server-fns/admin-permissions/get-role-abilities.d.ts.map +1 -0
  253. package/dist/server-fns/admin-permissions/get-role-abilities.js +14 -0
  254. package/dist/server-fns/admin-permissions/index.d.ts +25 -0
  255. package/dist/server-fns/admin-permissions/index.d.ts.map +1 -0
  256. package/dist/server-fns/admin-permissions/index.js +4 -0
  257. package/dist/server-fns/admin-permissions/list-registered.d.ts +33 -0
  258. package/dist/server-fns/admin-permissions/list-registered.d.ts.map +1 -0
  259. package/dist/server-fns/admin-permissions/list-registered.js +14 -0
  260. package/dist/server-fns/admin-permissions/set-role-abilities.d.ts +16 -0
  261. package/dist/server-fns/admin-permissions/set-role-abilities.d.ts.map +1 -0
  262. package/dist/server-fns/admin-permissions/set-role-abilities.js +14 -0
  263. package/dist/server-fns/admin-permissions/who-has.d.ts +26 -0
  264. package/dist/server-fns/admin-permissions/who-has.d.ts.map +1 -0
  265. package/dist/server-fns/admin-permissions/who-has.js +14 -0
  266. package/dist/server-fns/admin-roles/create.d.ts +24 -0
  267. package/dist/server-fns/admin-roles/create.d.ts.map +1 -0
  268. package/dist/server-fns/admin-roles/create.js +13 -0
  269. package/dist/server-fns/admin-roles/delete.d.ts +17 -0
  270. package/dist/server-fns/admin-roles/delete.d.ts.map +1 -0
  271. package/dist/server-fns/admin-roles/delete.js +13 -0
  272. package/dist/server-fns/admin-roles/get.d.ts +22 -0
  273. package/dist/server-fns/admin-roles/get.d.ts.map +1 -0
  274. package/dist/server-fns/admin-roles/get.js +13 -0
  275. package/dist/server-fns/admin-roles/index.d.ts +23 -0
  276. package/dist/server-fns/admin-roles/index.d.ts.map +1 -0
  277. package/dist/server-fns/admin-roles/index.js +6 -0
  278. package/dist/server-fns/admin-roles/list.d.ts +26 -0
  279. package/dist/server-fns/admin-roles/list.d.ts.map +1 -0
  280. package/dist/server-fns/admin-roles/list.js +13 -0
  281. package/dist/server-fns/admin-roles/reorder.d.ts +15 -0
  282. package/dist/server-fns/admin-roles/reorder.d.ts.map +1 -0
  283. package/dist/server-fns/admin-roles/reorder.js +13 -0
  284. package/dist/server-fns/admin-roles/update.d.ts +27 -0
  285. package/dist/server-fns/admin-roles/update.d.ts.map +1 -0
  286. package/dist/server-fns/admin-roles/update.js +13 -0
  287. package/dist/server-fns/admin-users/create.d.ts +35 -0
  288. package/dist/server-fns/admin-users/create.d.ts.map +1 -0
  289. package/dist/server-fns/admin-users/create.js +13 -0
  290. package/dist/server-fns/admin-users/delete.d.ts +17 -0
  291. package/dist/server-fns/admin-users/delete.d.ts.map +1 -0
  292. package/dist/server-fns/admin-users/delete.js +13 -0
  293. package/dist/server-fns/admin-users/disable.d.ts +15 -0
  294. package/dist/server-fns/admin-users/disable.d.ts.map +1 -0
  295. package/dist/server-fns/admin-users/disable.js +13 -0
  296. package/dist/server-fns/admin-users/enable.d.ts +15 -0
  297. package/dist/server-fns/admin-users/enable.d.ts.map +1 -0
  298. package/dist/server-fns/admin-users/enable.js +13 -0
  299. package/dist/server-fns/admin-users/get-user-roles.d.ts +25 -0
  300. package/dist/server-fns/admin-users/get-user-roles.d.ts.map +1 -0
  301. package/dist/server-fns/admin-users/get-user-roles.js +13 -0
  302. package/dist/server-fns/admin-users/get.d.ts +29 -0
  303. package/dist/server-fns/admin-users/get.d.ts.map +1 -0
  304. package/dist/server-fns/admin-users/get.js +13 -0
  305. package/dist/server-fns/admin-users/index.d.ts +28 -0
  306. package/dist/server-fns/admin-users/index.d.ts.map +1 -0
  307. package/dist/server-fns/admin-users/index.js +10 -0
  308. package/dist/server-fns/admin-users/list.d.ts +51 -0
  309. package/dist/server-fns/admin-users/list.d.ts.map +1 -0
  310. package/dist/server-fns/admin-users/list.js +13 -0
  311. package/dist/server-fns/admin-users/set-password.d.ts +30 -0
  312. package/dist/server-fns/admin-users/set-password.d.ts.map +1 -0
  313. package/dist/server-fns/admin-users/set-password.js +13 -0
  314. package/dist/server-fns/admin-users/set-user-roles.d.ts +25 -0
  315. package/dist/server-fns/admin-users/set-user-roles.d.ts.map +1 -0
  316. package/dist/server-fns/admin-users/set-user-roles.js +13 -0
  317. package/dist/server-fns/admin-users/update.d.ts +37 -0
  318. package/dist/server-fns/admin-users/update.d.ts.map +1 -0
  319. package/dist/server-fns/admin-users/update.js +13 -0
  320. package/dist/server-fns/auth/current-user.d.ts +38 -0
  321. package/dist/server-fns/auth/current-user.d.ts.map +1 -0
  322. package/dist/server-fns/auth/current-user.js +52 -0
  323. package/dist/server-fns/auth/index.d.ts +11 -0
  324. package/dist/server-fns/auth/index.d.ts.map +1 -0
  325. package/dist/server-fns/auth/index.js +3 -0
  326. package/dist/server-fns/auth/sign-in.d.ts +19 -0
  327. package/dist/server-fns/auth/sign-in.d.ts.map +1 -0
  328. package/dist/server-fns/auth/sign-in.js +31 -0
  329. package/dist/server-fns/auth/sign-out.d.ts +11 -0
  330. package/dist/server-fns/auth/sign-out.d.ts.map +1 -0
  331. package/dist/server-fns/auth/sign-out.js +17 -0
  332. package/dist/server-fns/collections/create.d.ts +21 -0
  333. package/dist/server-fns/collections/create.d.ts.map +1 -0
  334. package/dist/server-fns/collections/create.js +40 -0
  335. package/dist/server-fns/collections/delete.d.ts +18 -0
  336. package/dist/server-fns/collections/delete.d.ts.map +1 -0
  337. package/dist/server-fns/collections/delete.js +44 -0
  338. package/dist/server-fns/collections/get.d.ts +26 -0
  339. package/dist/server-fns/collections/get.d.ts.map +1 -0
  340. package/dist/server-fns/collections/get.js +133 -0
  341. package/dist/server-fns/collections/history.d.ts +43 -0
  342. package/dist/server-fns/collections/history.d.ts.map +1 -0
  343. package/dist/server-fns/collections/history.js +29 -0
  344. package/dist/server-fns/collections/index.d.ts +16 -0
  345. package/dist/server-fns/collections/index.d.ts.map +1 -0
  346. package/dist/server-fns/collections/index.js +9 -0
  347. package/dist/server-fns/collections/list.d.ts +54 -0
  348. package/dist/server-fns/collections/list.d.ts.map +1 -0
  349. package/dist/server-fns/collections/list.js +65 -0
  350. package/dist/server-fns/collections/stats.d.ts +17 -0
  351. package/dist/server-fns/collections/stats.d.ts.map +1 -0
  352. package/dist/server-fns/collections/stats.js +28 -0
  353. package/dist/server-fns/collections/status.d.ts +31 -0
  354. package/dist/server-fns/collections/status.d.ts.map +1 -0
  355. package/dist/server-fns/collections/status.js +79 -0
  356. package/dist/server-fns/collections/update.d.ts +26 -0
  357. package/dist/server-fns/collections/update.d.ts.map +1 -0
  358. package/dist/server-fns/collections/update.js +41 -0
  359. package/dist/server-fns/collections/upload.d.ts +57 -0
  360. package/dist/server-fns/collections/upload.d.ts.map +1 -0
  361. package/dist/server-fns/collections/upload.js +132 -0
  362. package/dist/server-fns/collections/utils.d.ts +15 -0
  363. package/dist/server-fns/collections/utils.d.ts.map +1 -0
  364. package/dist/server-fns/collections/utils.js +4 -0
  365. package/dist/server-fns/preview/disable.d.ts +12 -0
  366. package/dist/server-fns/preview/disable.d.ts.map +1 -0
  367. package/dist/server-fns/preview/disable.js +12 -0
  368. package/dist/server-fns/preview/enable.d.ts +12 -0
  369. package/dist/server-fns/preview/enable.d.ts.map +1 -0
  370. package/dist/server-fns/preview/enable.js +14 -0
  371. package/dist/server-fns/preview/index.d.ts +11 -0
  372. package/dist/server-fns/preview/index.d.ts.map +1 -0
  373. package/dist/server-fns/preview/index.js +3 -0
  374. package/dist/server-fns/preview/state.d.ts +11 -0
  375. package/dist/server-fns/preview/state.d.ts.map +1 -0
  376. package/dist/server-fns/preview/state.js +8 -0
  377. package/package.json +164 -0
  378. package/src/admin-shell/admin-roles/container.module.css +132 -0
  379. package/src/admin-shell/admin-roles/container.tsx +209 -0
  380. package/src/admin-shell/admin-roles/delete.module.css +52 -0
  381. package/src/admin-shell/admin-roles/delete.tsx +117 -0
  382. package/src/admin-shell/admin-roles/list.module.css +158 -0
  383. package/src/admin-shell/admin-roles/list.tsx +308 -0
  384. package/src/admin-shell/admin-users/container.module.css +199 -0
  385. package/src/admin-shell/admin-users/container.tsx +344 -0
  386. package/src/admin-shell/admin-users/delete.module.css +52 -0
  387. package/src/admin-shell/admin-users/delete.tsx +129 -0
  388. package/src/admin-shell/admin-users/list.module.css +164 -0
  389. package/src/admin-shell/admin-users/list.tsx +314 -0
  390. package/src/admin-shell/chrome/admin-app-bar.module.css +72 -0
  391. package/src/admin-shell/chrome/admin-app-bar.tsx +74 -0
  392. package/src/admin-shell/chrome/admin-layout.module.css +16 -0
  393. package/src/admin-shell/chrome/branding.module.css +20 -0
  394. package/src/admin-shell/chrome/branding.tsx +23 -0
  395. package/src/admin-shell/chrome/breadcrumbs/@types.ts +5 -0
  396. package/src/admin-shell/chrome/breadcrumbs/breadcrumbs-client.tsx +30 -0
  397. package/src/admin-shell/chrome/breadcrumbs/breadcrumbs-provider.tsx +48 -0
  398. package/src/admin-shell/chrome/breadcrumbs/breadcrumbs.module.css +93 -0
  399. package/src/admin-shell/chrome/breadcrumbs/breadcrumbs.tsx +96 -0
  400. package/src/admin-shell/chrome/byline-logo.tsx +151 -0
  401. package/src/admin-shell/chrome/content.module.css +16 -0
  402. package/src/admin-shell/chrome/content.tsx +60 -0
  403. package/src/admin-shell/chrome/dashboard.module.css +245 -0
  404. package/src/admin-shell/chrome/dashboard.tsx +128 -0
  405. package/src/admin-shell/chrome/drawer-toggle.module.css +30 -0
  406. package/src/admin-shell/chrome/drawer-toggle.tsx +62 -0
  407. package/src/admin-shell/chrome/hamburger.module.css +16 -0
  408. package/src/admin-shell/chrome/hamburger.tsx +56 -0
  409. package/src/admin-shell/chrome/loose-router.ts +47 -0
  410. package/src/admin-shell/chrome/menu-drawer.module.css +196 -0
  411. package/src/admin-shell/chrome/menu-drawer.tsx +155 -0
  412. package/src/admin-shell/chrome/menu-provider.tsx +95 -0
  413. package/src/admin-shell/chrome/preview-toggle.tsx +107 -0
  414. package/src/admin-shell/chrome/route-error.module.css +114 -0
  415. package/src/admin-shell/chrome/route-error.tsx +125 -0
  416. package/src/admin-shell/chrome/router-pager.tsx +179 -0
  417. package/src/admin-shell/chrome/sign-in-page.module.css +32 -0
  418. package/src/admin-shell/chrome/sign-in-page.tsx +35 -0
  419. package/src/admin-shell/chrome/sort-icons.tsx +127 -0
  420. package/src/admin-shell/chrome/th-sortable.module.css +51 -0
  421. package/src/admin-shell/chrome/th-sortable.tsx +114 -0
  422. package/src/admin-shell/chrome/use-media-query.ts +28 -0
  423. package/src/admin-shell/chrome/utils.ts +20 -0
  424. package/src/admin-shell/collections/api.module.css +62 -0
  425. package/src/admin-shell/collections/api.tsx +70 -0
  426. package/src/admin-shell/collections/create.tsx +108 -0
  427. package/src/admin-shell/collections/edit.tsx +319 -0
  428. package/src/admin-shell/collections/history.module.css +156 -0
  429. package/src/admin-shell/collections/history.tsx +352 -0
  430. package/src/admin-shell/collections/list.module.css +124 -0
  431. package/src/admin-shell/collections/list.tsx +313 -0
  432. package/src/admin-shell/collections/preview-link.tsx +138 -0
  433. package/src/admin-shell/collections/tanstack-navigation-guard.ts +43 -0
  434. package/src/admin-shell/collections/view-menu.module.css +60 -0
  435. package/src/admin-shell/collections/view-menu.tsx +238 -0
  436. package/src/auth/auth-context.test.node.ts +200 -0
  437. package/src/auth/auth-context.ts +119 -0
  438. package/src/auth/auth-cookies.ts +113 -0
  439. package/src/auth/preview-cookies.ts +73 -0
  440. package/src/declarations.d.ts +4 -0
  441. package/src/index.ts +44 -0
  442. package/src/integrations/abilities.tsx +90 -0
  443. package/src/integrations/api-utils.ts +66 -0
  444. package/src/integrations/byline-admin-services.ts +86 -0
  445. package/src/integrations/byline-client.ts +40 -0
  446. package/src/integrations/byline-core.ts +32 -0
  447. package/src/integrations/byline-field-services.ts +35 -0
  448. package/src/integrations/byline-public-client.ts +53 -0
  449. package/src/integrations/byline-viewer-client.ts +99 -0
  450. package/src/integrations/start-errors.ts +86 -0
  451. package/src/routes/create-admin-account-route.tsx +65 -0
  452. package/src/routes/create-admin-dashboard-route.tsx +52 -0
  453. package/src/routes/create-admin-layout-route.tsx +89 -0
  454. package/src/routes/create-admin-permissions-route.tsx +43 -0
  455. package/src/routes/create-admin-role-edit-route.tsx +88 -0
  456. package/src/routes/create-admin-roles-list-route.tsx +39 -0
  457. package/src/routes/create-admin-user-edit-route.tsx +105 -0
  458. package/src/routes/create-admin-users-list-route.tsx +84 -0
  459. package/src/routes/create-collection-api-route.tsx +111 -0
  460. package/src/routes/create-collection-create-route.tsx +66 -0
  461. package/src/routes/create-collection-edit-route.tsx +102 -0
  462. package/src/routes/create-collection-history-route.tsx +130 -0
  463. package/src/routes/create-collection-list-route.tsx +175 -0
  464. package/src/routes/create-sign-in-route.tsx +39 -0
  465. package/src/routes/index.ts +36 -0
  466. package/src/server-fns/admin-account/change-password.ts +27 -0
  467. package/src/server-fns/admin-account/get.ts +27 -0
  468. package/src/server-fns/admin-account/index.ts +28 -0
  469. package/src/server-fns/admin-account/update.ts +31 -0
  470. package/src/server-fns/admin-permissions/get-role-abilities.ts +27 -0
  471. package/src/server-fns/admin-permissions/index.ts +36 -0
  472. package/src/server-fns/admin-permissions/list-registered.ts +36 -0
  473. package/src/server-fns/admin-permissions/set-role-abilities.ts +32 -0
  474. package/src/server-fns/admin-permissions/who-has.ts +24 -0
  475. package/src/server-fns/admin-roles/create.ts +28 -0
  476. package/src/server-fns/admin-roles/delete.ts +25 -0
  477. package/src/server-fns/admin-roles/get.ts +21 -0
  478. package/src/server-fns/admin-roles/index.ts +25 -0
  479. package/src/server-fns/admin-roles/list.ts +27 -0
  480. package/src/server-fns/admin-roles/reorder.ts +21 -0
  481. package/src/server-fns/admin-roles/update.ts +31 -0
  482. package/src/server-fns/admin-users/create.ts +32 -0
  483. package/src/server-fns/admin-users/delete.ts +21 -0
  484. package/src/server-fns/admin-users/disable.ts +24 -0
  485. package/src/server-fns/admin-users/enable.ts +24 -0
  486. package/src/server-fns/admin-users/get-user-roles.ts +21 -0
  487. package/src/server-fns/admin-users/get.ts +21 -0
  488. package/src/server-fns/admin-users/index.ts +35 -0
  489. package/src/server-fns/admin-users/list.ts +40 -0
  490. package/src/server-fns/admin-users/set-password.ts +27 -0
  491. package/src/server-fns/admin-users/set-user-roles.ts +26 -0
  492. package/src/server-fns/admin-users/update.ts +34 -0
  493. package/src/server-fns/auth/current-user.ts +117 -0
  494. package/src/server-fns/auth/index.ts +15 -0
  495. package/src/server-fns/auth/sign-in.ts +71 -0
  496. package/src/server-fns/auth/sign-out.ts +42 -0
  497. package/src/server-fns/collections/create.ts +58 -0
  498. package/src/server-fns/collections/delete.ts +62 -0
  499. package/src/server-fns/collections/get.ts +233 -0
  500. package/src/server-fns/collections/history.ts +73 -0
  501. package/src/server-fns/collections/index.ts +16 -0
  502. package/src/server-fns/collections/list.ts +121 -0
  503. package/src/server-fns/collections/stats.ts +52 -0
  504. package/src/server-fns/collections/status.ts +102 -0
  505. package/src/server-fns/collections/update.ts +67 -0
  506. package/src/server-fns/collections/upload.ts +274 -0
  507. package/src/server-fns/collections/utils.ts +17 -0
  508. package/src/server-fns/preview/disable.ts +24 -0
  509. package/src/server-fns/preview/enable.ts +27 -0
  510. package/src/server-fns/preview/index.ts +11 -0
  511. package/src/server-fns/preview/state.ts +30 -0
@@ -0,0 +1,65 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { ERR_NOT_FOUND, getCollectionSchemasForPath, getLogger, getServerConfig } from "@byline/core";
3
+ import { ensureCollection } from "../../integrations/api-utils.js";
4
+ import { getAdminBylineClient } from "../../integrations/byline-client.js";
5
+ import { serialise } from "./utils.js";
6
+ const getCollectionDocuments = createServerFn({
7
+ method: 'GET'
8
+ }).inputValidator((input)=>input).handler(async ({ data })=>{
9
+ const { collection: path, params } = data;
10
+ const config = await ensureCollection(path);
11
+ if (!config) throw ERR_NOT_FOUND({
12
+ message: 'Collection not found',
13
+ details: {
14
+ collectionPath: path
15
+ }
16
+ }).log(getLogger());
17
+ const client = getAdminBylineClient();
18
+ const handle = client.collection(path);
19
+ const pageSize = params.page_size ?? 20;
20
+ const where = {};
21
+ if (params.status) where.status = params.status;
22
+ if (params.query) where.query = params.query;
23
+ const result = await handle.find({
24
+ where: Object.keys(where).length > 0 ? where : void 0,
25
+ sort: params.order ? {
26
+ [params.order]: false === params.desc ? 'asc' : 'desc'
27
+ } : void 0,
28
+ locale: params.locale ?? 'en',
29
+ page: params.page,
30
+ pageSize,
31
+ select: params.fields,
32
+ status: 'any'
33
+ });
34
+ const documentIds = result.docs.map((d)=>d.id);
35
+ const publishedSet = documentIds.length > 0 ? await getServerConfig().db.queries.documents.getPublishedDocumentIds({
36
+ collection_id: config.collection.id,
37
+ document_ids: documentIds
38
+ }) : new Set();
39
+ const docs = result.docs.map((d)=>({
40
+ ...d,
41
+ hasPublishedVersion: publishedSet.has(d.id)
42
+ }));
43
+ const response = {
44
+ docs,
45
+ meta: {
46
+ ...result.meta,
47
+ order: params.order,
48
+ desc: params.desc
49
+ },
50
+ included: {
51
+ collection: {
52
+ id: config.collection.id,
53
+ path: config.collection.path,
54
+ labels: {
55
+ singular: config.definition.labels.singular || config.collection.path,
56
+ plural: config.definition.labels.plural || config.collection.path
57
+ }
58
+ }
59
+ }
60
+ };
61
+ const serialised = serialise(response);
62
+ const { list } = getCollectionSchemasForPath(path);
63
+ return list.parse(serialised);
64
+ });
65
+ export { getCollectionDocuments };
@@ -0,0 +1,17 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export interface CollectionStatusCount {
9
+ status: string;
10
+ count: number;
11
+ }
12
+ /**
13
+ * Fetch per-status document counts for a collection.
14
+ * Returns an empty array on any error so the caller can degrade gracefully.
15
+ */
16
+ export declare function getCollectionStats(collection: string): Promise<CollectionStatusCount[]>;
17
+ //# sourceMappingURL=stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/server-fns/collections/stats.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAoBD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAO7F"}
@@ -0,0 +1,28 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { ensureCollection } from "../../integrations/api-utils.js";
3
+ import { getAdminBylineClient } from "../../integrations/byline-client.js";
4
+ const getCollectionStatsFn = createServerFn({
5
+ method: 'GET'
6
+ }).inputValidator((input)=>input).handler(async ({ data })=>{
7
+ const config = await ensureCollection(data.collection);
8
+ if (!config) return {
9
+ stats: []
10
+ };
11
+ const counts = await getAdminBylineClient().collection(data.collection).countByStatus();
12
+ return {
13
+ stats: counts
14
+ };
15
+ });
16
+ async function getCollectionStats(collection) {
17
+ try {
18
+ const result = await getCollectionStatsFn({
19
+ data: {
20
+ collection
21
+ }
22
+ });
23
+ return result.stats;
24
+ } catch {
25
+ return [];
26
+ }
27
+ }
28
+ export { getCollectionStats };
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export declare const updateDocumentStatus: import("@tanstack/react-start").RequiredFetcher<undefined, (input: {
9
+ collection: string;
10
+ id: string;
11
+ status: string;
12
+ }) => {
13
+ collection: string;
14
+ id: string;
15
+ status: string;
16
+ }, Promise<{
17
+ status: "ok";
18
+ previousStatus: string;
19
+ newStatus: string;
20
+ }>>;
21
+ export declare const unpublishDocument: import("@tanstack/react-start").RequiredFetcher<undefined, (input: {
22
+ collection: string;
23
+ id: string;
24
+ }) => {
25
+ collection: string;
26
+ id: string;
27
+ }, Promise<{
28
+ status: "ok";
29
+ archivedCount: number;
30
+ }>>;
31
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/server-fns/collections/status.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkBH,eAAO,MAAM,oBAAoB,qEACP;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;gBAApC,MAAM;QAAM,MAAM;YAAU,MAAM;;;;;GAkCtE,CAAA;AAMJ,eAAO,MAAM,iBAAiB,qEACJ;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE;gBAApB,MAAM;QAAM,MAAM;;;;GAmCtD,CAAA"}
@@ -0,0 +1,79 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { ERR_NOT_FOUND, getLogger, getServerConfig } from "@byline/core";
3
+ import { changeDocumentStatus, unpublishDocument } from "@byline/core/services";
4
+ import { getAdminRequestContext } from "../../auth/auth-context.js";
5
+ import { ensureCollection } from "../../integrations/api-utils.js";
6
+ const updateDocumentStatus = createServerFn({
7
+ method: 'POST'
8
+ }).inputValidator((input)=>input).handler(async ({ data: input })=>{
9
+ const { collection: path, id, status: nextStatus } = input;
10
+ const logger = getLogger();
11
+ const config = await ensureCollection(path);
12
+ if (!config) throw ERR_NOT_FOUND({
13
+ message: 'Collection not found',
14
+ details: {
15
+ collectionPath: path
16
+ }
17
+ }).log(logger);
18
+ const serverConfig = getServerConfig();
19
+ const ctx = {
20
+ db: serverConfig.db,
21
+ definition: config.definition,
22
+ collectionId: config.collection.id,
23
+ collectionVersion: config.collection.version,
24
+ collectionPath: path,
25
+ logger,
26
+ defaultLocale: serverConfig.i18n.content.defaultLocale,
27
+ slugifier: serverConfig.slugifier,
28
+ requestContext: await getAdminRequestContext()
29
+ };
30
+ const result = await changeDocumentStatus(ctx, {
31
+ documentId: id,
32
+ nextStatus
33
+ });
34
+ return {
35
+ status: 'ok',
36
+ previousStatus: result.previousStatus,
37
+ newStatus: result.newStatus
38
+ };
39
+ });
40
+ const status_unpublishDocument = createServerFn({
41
+ method: 'POST'
42
+ }).inputValidator((input)=>input).handler(async ({ data: input })=>{
43
+ const { collection: path, id } = input;
44
+ const logger = getLogger();
45
+ const config = await ensureCollection(path);
46
+ if (!config) throw ERR_NOT_FOUND({
47
+ message: 'Collection not found',
48
+ details: {
49
+ collectionPath: path
50
+ }
51
+ }).log(logger);
52
+ const serverConfig = getServerConfig();
53
+ const ctx = {
54
+ db: serverConfig.db,
55
+ definition: config.definition,
56
+ collectionId: config.collection.id,
57
+ collectionVersion: config.collection.version,
58
+ collectionPath: path,
59
+ logger,
60
+ defaultLocale: serverConfig.i18n.content.defaultLocale,
61
+ slugifier: serverConfig.slugifier,
62
+ requestContext: await getAdminRequestContext()
63
+ };
64
+ const result = await unpublishDocument(ctx, {
65
+ documentId: id
66
+ });
67
+ if (0 === result.archivedCount) throw ERR_NOT_FOUND({
68
+ message: 'No published version found for this document',
69
+ details: {
70
+ documentId: id,
71
+ collectionPath: path
72
+ }
73
+ }).log(logger);
74
+ return {
75
+ status: 'ok',
76
+ archivedCount: result.archivedCount
77
+ };
78
+ });
79
+ export { status_unpublishDocument as unpublishDocument, updateDocumentStatus };
@@ -0,0 +1,26 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ import type { DocumentPatch } from '@byline/core/patches';
9
+ export declare const updateCollectionDocumentWithPatches: import("@tanstack/react-start").RequiredFetcher<undefined, (input: {
10
+ collection: string;
11
+ id: string;
12
+ patches: DocumentPatch[];
13
+ versionId?: string;
14
+ locale?: string;
15
+ path?: string;
16
+ }) => {
17
+ collection: string;
18
+ id: string;
19
+ patches: DocumentPatch[];
20
+ versionId?: string;
21
+ locale?: string;
22
+ path?: string;
23
+ }, Promise<{
24
+ status: "ok";
25
+ }>>;
26
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/server-fns/collections/update.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAWzD,eAAO,MAAM,mCAAmC,qEAEpC;IACN,UAAU,EAAE,MAAM,CAAA;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;gBANa,MAAM;QACd,MAAM;aACD,aAAa,EAAE;gBACZ,MAAM;aACT,MAAM;WACR,MAAM;;;GAoCf,CAAA"}
@@ -0,0 +1,41 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { ERR_NOT_FOUND, getLogger, getServerConfig } from "@byline/core";
3
+ import { updateDocumentWithPatches } from "@byline/core/services";
4
+ import { getAdminRequestContext } from "../../auth/auth-context.js";
5
+ import { ensureCollection } from "../../integrations/api-utils.js";
6
+ const updateCollectionDocumentWithPatches = createServerFn({
7
+ method: 'POST'
8
+ }).inputValidator((input)=>input).handler(async ({ data: input })=>{
9
+ const { collection: path, id, patches, versionId, locale, path: explicitPath } = input;
10
+ const logger = getLogger();
11
+ const config = await ensureCollection(path);
12
+ if (!config) throw ERR_NOT_FOUND({
13
+ message: 'Collection not found',
14
+ details: {
15
+ collectionPath: path
16
+ }
17
+ }).log(logger);
18
+ const serverConfig = getServerConfig();
19
+ const ctx = {
20
+ db: serverConfig.db,
21
+ definition: config.definition,
22
+ collectionId: config.collection.id,
23
+ collectionVersion: config.collection.version,
24
+ collectionPath: path,
25
+ logger,
26
+ defaultLocale: serverConfig.i18n.content.defaultLocale,
27
+ slugifier: serverConfig.slugifier,
28
+ requestContext: await getAdminRequestContext()
29
+ };
30
+ await updateDocumentWithPatches(ctx, {
31
+ documentId: id,
32
+ patches,
33
+ documentVersionId: versionId,
34
+ locale: locale ?? serverConfig.i18n.content.defaultLocale,
35
+ path: explicitPath
36
+ });
37
+ return {
38
+ status: 'ok'
39
+ };
40
+ });
41
+ export { updateCollectionDocumentWithPatches };
@@ -0,0 +1,57 @@
1
+ import type { StoredFileValue } from '@byline/core';
2
+ /**
3
+ * Result of an upload through the host transport. The legacy top-level
4
+ * `variants: { name, url }[]` is gone — variants live on
5
+ * `storedFile.variants` with full `storagePath`/`storageUrl`/`width`/
6
+ * `height`/`format`. Single source of truth.
7
+ */
8
+ export interface UploadFieldResult {
9
+ /** Present when the upload endpoint created a document (createDocument=true, the default). */
10
+ documentId?: string;
11
+ documentVersionId?: string;
12
+ storedFile: StoredFileValue;
13
+ }
14
+ interface UploadDocumentInput {
15
+ collectionPath: string;
16
+ shouldCreateDocument: boolean;
17
+ /**
18
+ * Name of the upload-capable image/file field on the collection. When
19
+ * absent, the handler defaults to the unique upload-capable field;
20
+ * collections with multiple upload-capable fields require an explicit
21
+ * `field` selector.
22
+ */
23
+ fieldName: string | null;
24
+ file: File;
25
+ fields: Record<string, string>;
26
+ }
27
+ declare function parseUploadFormData(data: FormData): UploadDocumentInput;
28
+ /**
29
+ * Temporary transport refactor note:
30
+ * This upload path now uses a module-local TanStack server function as a thin
31
+ * transport wrapper around the framework-agnostic core upload service.
32
+ *
33
+ * This is still an interim transport shape. The next architectural step is to
34
+ * add a stable HTTP upload transport backed by the same core service so remote
35
+ * deployments and external clients can use the identical upload orchestration
36
+ * without depending on TanStack Start server-function transport details.
37
+ */
38
+ export declare const uploadCollectionField: import("@tanstack/react-start").RequiredFetcher<undefined, typeof parseUploadFormData, Promise<import("@byline/core").UploadFieldResult>>;
39
+ /**
40
+ * Upload a file to an upload-enabled collection.
41
+ *
42
+ * This preserves the existing client-side call signature while routing the
43
+ * upload through the module-local TanStack Start server function above.
44
+ *
45
+ * @param collection - collection path (e.g. 'media')
46
+ * @param formData - FormData with at minimum a `file` (File) field; may
47
+ * also include `title`, `altText`, `caption`, `credit`,
48
+ * `category`.
49
+ * @param createDocument - when `false`, the server stores the file and returns
50
+ * the StoredFileValue but does NOT create a document
51
+ * version. Use this when the upload is part of an
52
+ * in-form field widget — the form's own save will
53
+ * create the document. Defaults to `true`.
54
+ */
55
+ export declare function uploadField(collection: string, formData: FormData, createDocument?: boolean): Promise<UploadFieldResult>;
56
+ export {};
57
+ //# sourceMappingURL=upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/server-fns/collections/upload.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAKV,eAAe,EAChB,MAAM,cAAc,CAAA;AASrB;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,8FAA8F;IAC9F,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,UAAU,EAAE,eAAe,CAAA;CAC5B;AAED,UAAU,mBAAmB;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,OAAO,CAAA;IAC7B;;;;;OAKG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAED,iBAAS,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,mBAAmB,CAmChE;AA2DD;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,2IA6F9B,CAAA;AAEJ;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,UAAO,GACpB,OAAO,CAAC,iBAAiB,CAAC,CAU5B"}
@@ -0,0 +1,132 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { ERR_NOT_FOUND, ERR_VALIDATION, getServerConfig, getUploadFields } from "@byline/core";
3
+ import { getLogger, withLogContext } from "@byline/core/logger";
4
+ import { uploadField } from "@byline/core/services";
5
+ import { extractImageMeta, generateImageVariants, isBypassMimeType } from "@byline/storage-local";
6
+ import { getAdminRequestContext } from "../../auth/auth-context.js";
7
+ import { ensureCollection } from "../../integrations/api-utils.js";
8
+ function parseUploadFormData(data) {
9
+ if (!(data instanceof FormData)) throw new Error('Expected FormData upload payload.');
10
+ const collectionEntry = data.get('collection');
11
+ if ('string' != typeof collectionEntry || '' === collectionEntry.trim()) throw new Error("Missing required form field 'collection'.");
12
+ const fileEntry = data.get('file');
13
+ if (!(fileEntry instanceof File)) throw new Error("Missing required form field 'file'.");
14
+ const fieldEntry = data.get('field');
15
+ const fieldName = 'string' == typeof fieldEntry && fieldEntry.trim() ? fieldEntry.trim() : null;
16
+ const fields = {};
17
+ for (const [key, value] of data.entries())if ('collection' !== key && 'createDocument' !== key && 'file' !== key && 'field' !== key) {
18
+ if ('string' == typeof value) fields[key] = value;
19
+ }
20
+ return {
21
+ collectionPath: collectionEntry.trim(),
22
+ shouldCreateDocument: 'false' !== data.get('createDocument'),
23
+ fieldName,
24
+ file: fileEntry,
25
+ fields
26
+ };
27
+ }
28
+ function resolveUploadFieldName(definition, collectionPath, requested) {
29
+ const candidates = getUploadFields(definition);
30
+ if (requested) {
31
+ const match = candidates.find((f)=>f.name === requested);
32
+ if (!match) throw ERR_VALIDATION({
33
+ message: `Field '${requested}' is not an upload-capable image/file field on collection '${collectionPath}'.`,
34
+ details: {
35
+ collectionPath,
36
+ requestedField: requested,
37
+ available: candidates.map((f)=>f.name)
38
+ }
39
+ });
40
+ return match.name;
41
+ }
42
+ if (1 === candidates.length) return candidates[0].name;
43
+ if (0 === candidates.length) throw ERR_VALIDATION({
44
+ message: `Collection '${collectionPath}' has no upload-capable image/file field. Add an 'upload' block to one of its image/file fields.`,
45
+ details: {
46
+ collectionPath
47
+ }
48
+ });
49
+ throw ERR_VALIDATION({
50
+ message: `Collection '${collectionPath}' has multiple upload-capable fields (${candidates.map((f)=>`'${f.name}'`).join(', ')}). Pass a 'field' FormData entry to select one.`,
51
+ details: {
52
+ collectionPath,
53
+ available: candidates.map((f)=>f.name)
54
+ }
55
+ });
56
+ }
57
+ const uploadCollectionField = createServerFn({
58
+ method: 'POST'
59
+ }).inputValidator(parseUploadFormData).handler(async ({ data })=>{
60
+ const { collectionPath, shouldCreateDocument, fieldName, file, fields } = data;
61
+ const logger = getLogger();
62
+ return withLogContext({
63
+ domain: 'api',
64
+ module: 'upload',
65
+ function: 'uploadCollectionField'
66
+ }, async ()=>{
67
+ const config = await ensureCollection(collectionPath);
68
+ if (null == config) throw ERR_NOT_FOUND({
69
+ message: 'Collection not found.',
70
+ details: {
71
+ collectionPath
72
+ }
73
+ }, uploadCollectionField).log(logger);
74
+ const serverConfig = getServerConfig();
75
+ const resolvedFieldName = resolveUploadFieldName(config.definition, collectionPath, fieldName);
76
+ const targetField = config.definition.fields.find((f)=>f.name === resolvedFieldName);
77
+ const storage = targetField.upload?.storage ?? serverConfig.storage;
78
+ if (!storage) throw new Error(`No storage provider configured for field '${resolvedFieldName}' on collection '${collectionPath}'. Set either field.upload.storage or the site-wide ServerConfig.storage.`);
79
+ let buffer;
80
+ try {
81
+ buffer = Buffer.from(await file.arrayBuffer());
82
+ } catch (err) {
83
+ logger.error({
84
+ err,
85
+ collectionPath
86
+ }, 'failed to read file buffer');
87
+ throw new Error('Failed to read uploaded file.');
88
+ }
89
+ const ctx = {
90
+ db: serverConfig.db,
91
+ definition: config.definition,
92
+ collectionId: config.collection.id,
93
+ collectionVersion: config.collection.version,
94
+ collectionPath,
95
+ fieldName: resolvedFieldName,
96
+ storage,
97
+ logger,
98
+ defaultLocale: serverConfig.i18n.content.defaultLocale,
99
+ slugifier: serverConfig.slugifier,
100
+ requestContext: await getAdminRequestContext(),
101
+ imageProcessor: {
102
+ extractMeta: extractImageMeta,
103
+ isBypassMimeType: isBypassMimeType,
104
+ generateVariants: async ({ buffer, mimeType, storedFile, storage, upload, logger })=>{
105
+ if (!('uploadDir' in storage) || 'string' != typeof storage.uploadDir) return [];
106
+ const uploadDir = storage.uploadDir;
107
+ const absoluteOriginalPath = `${uploadDir}/${storedFile.storagePath}`;
108
+ return generateImageVariants(buffer, mimeType, absoluteOriginalPath, uploadDir, upload.sizes ?? [], logger);
109
+ }
110
+ }
111
+ };
112
+ return uploadField(ctx, {
113
+ buffer,
114
+ originalFilename: file.name || 'upload',
115
+ mimeType: file.type || 'application/octet-stream',
116
+ fileSize: file.size,
117
+ fields,
118
+ shouldCreateDocument,
119
+ locale: serverConfig.i18n.content.defaultLocale
120
+ });
121
+ });
122
+ });
123
+ async function upload_uploadField(collection, formData, createDocument = true) {
124
+ const payload = new FormData();
125
+ for (const [key, value] of formData.entries())payload.append(key, value);
126
+ payload.set('collection', collection);
127
+ payload.set('createDocument', createDocument ? 'true' : 'false');
128
+ return uploadCollectionField({
129
+ data: payload
130
+ });
131
+ }
132
+ export { uploadCollectionField, upload_uploadField as uploadField };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ /**
9
+ * Deep-serialise a value through JSON to convert Date objects to ISO strings.
10
+ * TanStack Start server functions pass return values directly during SSR
11
+ * (no automatic JSON round-trip), so Date instances from the DB driver would
12
+ * fail downstream Zod z.string() checks without this explicit step.
13
+ */
14
+ export declare function serialise<T>(value: T): T;
15
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/server-fns/collections/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAExC"}
@@ -0,0 +1,4 @@
1
+ function serialise(value) {
2
+ return JSON.parse(JSON.stringify(value));
3
+ }
4
+ export { serialise };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export declare const disablePreviewModeFn: import("@tanstack/react-start").OptionalFetcher<undefined, undefined, Promise<{
9
+ status: "ok";
10
+ preview: false;
11
+ }>>;
12
+ //# sourceMappingURL=disable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disable.d.ts","sourceRoot":"","sources":["../../../src/server-fns/preview/disable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,eAAO,MAAM,oBAAoB;;;GAG/B,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { clearPreviewCookie } from "../../auth/preview-cookies.js";
3
+ const disablePreviewModeFn = createServerFn({
4
+ method: 'POST'
5
+ }).handler(async ()=>{
6
+ clearPreviewCookie();
7
+ return {
8
+ status: 'ok',
9
+ preview: false
10
+ };
11
+ });
12
+ export { disablePreviewModeFn };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export declare const enablePreviewModeFn: import("@tanstack/react-start").OptionalFetcher<undefined, undefined, Promise<{
9
+ status: "ok";
10
+ preview: true;
11
+ }>>;
12
+ //# sourceMappingURL=enable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enable.d.ts","sourceRoot":"","sources":["../../../src/server-fns/preview/enable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,eAAO,MAAM,mBAAmB;;;GAI9B,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { getAdminRequestContext } from "../../auth/auth-context.js";
3
+ import { setPreviewCookie } from "../../auth/preview-cookies.js";
4
+ const enablePreviewModeFn = createServerFn({
5
+ method: 'POST'
6
+ }).handler(async ()=>{
7
+ await getAdminRequestContext();
8
+ setPreviewCookie();
9
+ return {
10
+ status: 'ok',
11
+ preview: true
12
+ };
13
+ });
14
+ export { enablePreviewModeFn };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export { disablePreviewModeFn } from './disable.js';
9
+ export { enablePreviewModeFn } from './enable.js';
10
+ export { getPreviewStateFn } from './state.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server-fns/preview/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { disablePreviewModeFn } from "./disable.js";
2
+ export { enablePreviewModeFn } from "./enable.js";
3
+ export { getPreviewStateFn } from "./state.js";
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This Source Code is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ *
6
+ * Copyright (c) Infonomic Company Limited
7
+ */
8
+ export declare const getPreviewStateFn: import("@tanstack/react-start").OptionalFetcher<undefined, undefined, Promise<{
9
+ preview: boolean;
10
+ }>>;
11
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/server-fns/preview/state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqBH,eAAO,MAAM,iBAAiB;;GAE5B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { readPreviewCookie } from "../../auth/preview-cookies.js";
3
+ const getPreviewStateFn = createServerFn({
4
+ method: 'GET'
5
+ }).handler(async ()=>({
6
+ preview: readPreviewCookie()
7
+ }));
8
+ export { getPreviewStateFn };