@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,35 @@
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 ACCESS_TOKEN_COOKIE = "byline_access_token";
9
+ export declare const REFRESH_TOKEN_COOKIE = "byline_refresh_token";
10
+ /** Read the access-token cookie. Returns undefined when not present. */
11
+ export declare function readAccessTokenCookie(): string | undefined;
12
+ /** Read the refresh-token cookie. Returns undefined when not present. */
13
+ export declare function readRefreshTokenCookie(): string | undefined;
14
+ export interface SessionCookieTokens {
15
+ accessToken: string;
16
+ refreshToken: string;
17
+ accessTokenExpiresAt: Date;
18
+ refreshTokenExpiresAt: Date;
19
+ }
20
+ /**
21
+ * Write both access and refresh cookies. Called after sign-in and after
22
+ * every transparent refresh in `getAdminRequestContext()`.
23
+ *
24
+ * `maxAge` is derived from each token's own expiry claim so the browser
25
+ * drops the cookies at the same moment the server would reject them —
26
+ * saves round trips when the refresh token has fully expired.
27
+ */
28
+ export declare function setSessionCookies(tokens: SessionCookieTokens): void;
29
+ /**
30
+ * Clear both session cookies. Called on sign-out and on any auth failure
31
+ * during `getAdminRequestContext()` (ensures the browser does not keep
32
+ * trying a token that the server has already rejected).
33
+ */
34
+ export declare function clearSessionCookies(): void;
35
+ //# sourceMappingURL=auth-cookies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-cookies.d.ts","sourceRoot":"","sources":["../../src/auth/auth-cookies.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4BH,eAAO,MAAM,mBAAmB,wBAAwB,CAAA;AACxD,eAAO,MAAM,oBAAoB,yBAAyB,CAAA;AAI1D,wEAAwE;AACxE,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAE1D;AAED,yEAAyE;AACzE,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAE3D;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,oBAAoB,EAAE,IAAI,CAAA;IAC1B,qBAAqB,EAAE,IAAI,CAAA;CAC5B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CA0BnE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAe1C"}
@@ -0,0 +1,46 @@
1
+ import { getCookie, setCookie } from "@tanstack/react-start/server";
2
+ const ACCESS_TOKEN_COOKIE = 'byline_access_token';
3
+ const REFRESH_TOKEN_COOKIE = 'byline_refresh_token';
4
+ const IS_PROD = 'production' === process.env.NODE_ENV;
5
+ function readAccessTokenCookie() {
6
+ return getCookie(ACCESS_TOKEN_COOKIE);
7
+ }
8
+ function readRefreshTokenCookie() {
9
+ return getCookie(REFRESH_TOKEN_COOKIE);
10
+ }
11
+ function setSessionCookies(tokens) {
12
+ const now = Date.now();
13
+ const accessMaxAgeSeconds = Math.max(0, Math.floor((tokens.accessTokenExpiresAt.getTime() - now) / 1000));
14
+ const refreshMaxAgeSeconds = Math.max(0, Math.floor((tokens.refreshTokenExpiresAt.getTime() - now) / 1000));
15
+ setCookie(ACCESS_TOKEN_COOKIE, tokens.accessToken, {
16
+ httpOnly: true,
17
+ sameSite: 'lax',
18
+ secure: IS_PROD,
19
+ path: '/',
20
+ maxAge: accessMaxAgeSeconds
21
+ });
22
+ setCookie(REFRESH_TOKEN_COOKIE, tokens.refreshToken, {
23
+ httpOnly: true,
24
+ sameSite: 'lax',
25
+ secure: IS_PROD,
26
+ path: '/',
27
+ maxAge: refreshMaxAgeSeconds
28
+ });
29
+ }
30
+ function clearSessionCookies() {
31
+ setCookie(ACCESS_TOKEN_COOKIE, '', {
32
+ httpOnly: true,
33
+ sameSite: 'lax',
34
+ secure: IS_PROD,
35
+ path: '/',
36
+ maxAge: 0
37
+ });
38
+ setCookie(REFRESH_TOKEN_COOKIE, '', {
39
+ httpOnly: true,
40
+ sameSite: 'lax',
41
+ secure: IS_PROD,
42
+ path: '/',
43
+ maxAge: 0
44
+ });
45
+ }
46
+ export { ACCESS_TOKEN_COOKIE, REFRESH_TOKEN_COOKIE, clearSessionCookies, readAccessTokenCookie, readRefreshTokenCookie, setSessionCookies };
@@ -0,0 +1,20 @@
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 PREVIEW_COOKIE = "byline_preview";
9
+ /** True iff the preview cookie is currently set on the request. */
10
+ export declare function readPreviewCookie(): boolean;
11
+ /**
12
+ * Write the preview cookie. Callers should ensure the request is from a
13
+ * valid admin session before invoking — the cookie itself is just a flag
14
+ * and carries no proof of authorisation. See `enablePreviewModeFn` for
15
+ * the canonical entry point.
16
+ */
17
+ export declare function setPreviewCookie(): void;
18
+ /** Clear the preview cookie. Safe to call from any context. */
19
+ export declare function clearPreviewCookie(): void;
20
+ //# sourceMappingURL=preview-cookies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-cookies.d.ts","sourceRoot":"","sources":["../../src/auth/preview-cookies.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA+BH,eAAO,MAAM,cAAc,mBAAmB,CAAA;AAK9C,mEAAmE;AACnE,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAQvC;AAED,+DAA+D;AAC/D,wBAAgB,kBAAkB,IAAI,IAAI,CAQzC"}
@@ -0,0 +1,26 @@
1
+ import { getCookie, setCookie } from "@tanstack/react-start/server";
2
+ const PREVIEW_COOKIE = 'byline_preview';
3
+ const PREVIEW_MAX_AGE_SECONDS = 86400;
4
+ const IS_PROD = 'production' === process.env.NODE_ENV;
5
+ function readPreviewCookie() {
6
+ return '1' === getCookie(PREVIEW_COOKIE);
7
+ }
8
+ function setPreviewCookie() {
9
+ setCookie(PREVIEW_COOKIE, '1', {
10
+ httpOnly: true,
11
+ sameSite: 'lax',
12
+ secure: IS_PROD,
13
+ path: '/',
14
+ maxAge: PREVIEW_MAX_AGE_SECONDS
15
+ });
16
+ }
17
+ function clearPreviewCookie() {
18
+ setCookie(PREVIEW_COOKIE, '', {
19
+ httpOnly: true,
20
+ sameSite: 'lax',
21
+ secure: IS_PROD,
22
+ path: '/',
23
+ maxAge: 0
24
+ });
25
+ }
26
+ export { PREVIEW_COOKIE, clearPreviewCookie, readPreviewCookie, setPreviewCookie };
@@ -0,0 +1,43 @@
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
+ * `@byline/host-tanstack-start` — TanStack Start host adapter for Byline.
10
+ *
11
+ * Houses everything that's framework-coupled to TanStack Start /
12
+ * Router so the framework-neutral packages (`@byline/core`, `@byline/admin`,
13
+ * `@byline/client`, `@byline/auth`, `@byline/ui`) stay framework-neutral.
14
+ *
15
+ * Surface is exposed via subpath exports rather than a single root barrel
16
+ * so hosts only pull in what they consume:
17
+ *
18
+ * - `@byline/host-tanstack-start/server-fns/<module>` — TanStack Start
19
+ * server functions for each admin module (admin-account, admin-roles,
20
+ * admin-users, admin-permissions, auth, collections).
21
+ * - `@byline/host-tanstack-start/auth/auth-context` — request-scoped
22
+ * `RequestContext` resolution that reads session cookies, refreshes
23
+ * transparently, and surfaces `ERR_UNAUTHENTICATED` to callers.
24
+ * - `@byline/host-tanstack-start/integrations/*` — host-side adapters
25
+ * binding TanStack Start primitives to the framework-neutral
26
+ * contracts in `@byline/ui` and `@byline/client`
27
+ * (`bylineFieldServices`, `bylineAdminServices`, the admin
28
+ * `BylineClient` singleton).
29
+ * - `@byline/host-tanstack-start/admin-shell/{chrome,collections,...}` —
30
+ * router-coupled admin UI: shared shell chrome (menu drawer, app bar,
31
+ * route-error, breadcrumbs, etc.) plus per-area page containers.
32
+ * - `@byline/host-tanstack-start/routes/*` — route factories. Each
33
+ * factory returns the result of `createFileRoute(path)({...})` ready
34
+ * for assignment to the host's `export const Route = ...`. The host
35
+ * supplies the filesystem-backed path string; the package owns the
36
+ * loader, `beforeLoad`, component, and error boundary.
37
+ *
38
+ * The root entry exports nothing intentionally — every consumption path
39
+ * is a subpath import. This keeps the public surface small and the
40
+ * boundaries explicit.
41
+ */
42
+ export {};
43
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EAAE,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,67 @@
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
+ * Client-side ability helpers for the admin shell.
10
+ *
11
+ * These hooks read the current admin user's ability set off the admin
12
+ * route's TanStack Router context — which `route.tsx` populates in
13
+ * `beforeLoad` via `getCurrentAdminUser()`. No separate React Context
14
+ * provider is required because the route context already plays that
15
+ * role.
16
+ *
17
+ * **Cosmetic UI only.** A hidden menu item, disabled button, or
18
+ * un-rendered children block is an affordance, never a security
19
+ * boundary. Every server-side path is independently gated by
20
+ * `assertActorCanPerform` (document collections) or `assertAdminActor`
21
+ * (admin user / role / permission management). Callers can construct
22
+ * the matching ability key by hand or — preferred — import the
23
+ * `ADMIN_*_ABILITIES` constants from the relevant
24
+ * `@byline/admin/admin-*` subpath so a rename surfaces as a type error
25
+ * rather than a silent miss.
26
+ *
27
+ * Super-admin bypass mirrors the server: every `useAbility` call
28
+ * returns `true` when `is_super_admin` is set.
29
+ *
30
+ * Snapshot semantics: the ability set is the snapshot from the last
31
+ * `beforeLoad` of the admin route, refreshed on navigation. A grant
32
+ * revoked mid-session won't disappear from the UI until the next
33
+ * navigation — fine for cosmetic cues since the server still rejects
34
+ * the underlying action.
35
+ */
36
+ import type React from 'react';
37
+ /**
38
+ * `true` when the current admin holds the given ability (or is a
39
+ * super-admin). Cosmetic — see file-level docstring.
40
+ */
41
+ export declare function useAbility(ability: string): boolean;
42
+ /**
43
+ * Bundle of ability checks for situations where a component needs more
44
+ * than one verb (e.g. the menu drawer asks about three keys at once).
45
+ * Avoids calling `useAbility` repeatedly when a single context read is
46
+ * sufficient.
47
+ */
48
+ export declare function useAbilities(): {
49
+ has: (ability: string) => boolean;
50
+ hasAny: (abilities: readonly string[]) => boolean;
51
+ isSuperAdmin: boolean;
52
+ };
53
+ /**
54
+ * JSX wrapper. Renders `children` only when the current admin holds
55
+ * the given ability. Cosmetic — see file-level docstring.
56
+ *
57
+ * ```tsx
58
+ * <RequireAbility ability={ADMIN_USERS_ABILITIES.create}>
59
+ * <Button>New admin user</Button>
60
+ * </RequireAbility>
61
+ * ```
62
+ */
63
+ export declare function RequireAbility({ ability, children, }: {
64
+ ability: string;
65
+ children: React.ReactNode;
66
+ }): React.ReactNode;
67
+ //# sourceMappingURL=abilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abilities.d.ts","sourceRoot":"","sources":["../../src/integrations/abilities.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAInD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI;IAC9B,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAA;IACjC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAA;IACjD,YAAY,EAAE,OAAO,CAAA;CACtB,CAMA;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,GAAG,KAAK,CAAC,SAAS,CAElB"}
@@ -0,0 +1,25 @@
1
+ import { useRouteContext } from "@tanstack/react-router";
2
+ const ADMIN_ROUTE_ID = '/(byline)/admin';
3
+ function useAbility(ability) {
4
+ const { user } = useRouteContext({
5
+ from: ADMIN_ROUTE_ID
6
+ });
7
+ if (user.is_super_admin) return true;
8
+ return user.abilities.includes(ability);
9
+ }
10
+ function useAbilities() {
11
+ const { user } = useRouteContext({
12
+ from: ADMIN_ROUTE_ID
13
+ });
14
+ const has = (ability)=>user.is_super_admin || user.abilities.includes(ability);
15
+ const hasAny = (abilities)=>user.is_super_admin || abilities.some((key)=>user.abilities.includes(key));
16
+ return {
17
+ has,
18
+ hasAny,
19
+ isSuperAdmin: user.is_super_admin
20
+ };
21
+ }
22
+ function RequireAbility({ ability, children }) {
23
+ return useAbility(ability) ? children : null;
24
+ }
25
+ export { RequireAbility, useAbilities, useAbility };
@@ -0,0 +1,34 @@
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
+ * NOTE: Before you dunk on this, this is a prototype implementation
10
+ * of our API and used only for development.
11
+ * We'll extract a properly configured API server soon.
12
+ */
13
+ import type { CollectionDefinition } from '@byline/core';
14
+ export interface EnsuredCollection {
15
+ definition: CollectionDefinition;
16
+ collection: {
17
+ id: string;
18
+ path: string;
19
+ version: number;
20
+ schemaHash: string;
21
+ };
22
+ }
23
+ /**
24
+ * Resolve a collection for an admin API request.
25
+ *
26
+ * Collections are reconciled with the database once at startup by
27
+ * `initBylineCore()` (see `packages/core/src/services/collection-bootstrap.ts`).
28
+ * This helper is a per-request cache lookup against the resulting in-memory
29
+ * registry — no DB I/O, no hash work.
30
+ *
31
+ * Returns `null` when the path is not registered in the client/server config.
32
+ */
33
+ export declare function ensureCollection(path: string): Promise<EnsuredCollection | null>;
34
+ //# sourceMappingURL=api-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-utils.d.ts","sourceRoot":"","sources":["../../src/integrations/api-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,cAAc,CAAA;AAK1E,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,oBAAoB,CAAA;IAChC,UAAU,EAAE;QACV,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAsBtF"}
@@ -0,0 +1,22 @@
1
+ import { getCollectionDefinition } from "@byline/core";
2
+ import { bylineCore } from "./byline-core.js";
3
+ async function ensureCollection(path) {
4
+ const definition = getCollectionDefinition(path);
5
+ if (null == definition) return null;
6
+ let record;
7
+ try {
8
+ record = bylineCore().getCollectionRecord(path);
9
+ } catch {
10
+ return null;
11
+ }
12
+ return {
13
+ definition,
14
+ collection: {
15
+ id: record.collectionId,
16
+ path,
17
+ version: record.version,
18
+ schemaHash: record.schemaHash
19
+ }
20
+ };
21
+ }
22
+ export { ensureCollection };
@@ -0,0 +1,25 @@
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
+ * Host-side adapter that binds the webapp's TanStack Start server functions
10
+ * to the framework-neutral `BylineAdminServices` contract consumed by
11
+ * `@byline/ui` admin components.
12
+ *
13
+ * Wired into the admin route once via `<BylineAdminServicesProvider>`. A
14
+ * future Next.js host would ship its own adapter file (server-actions in
15
+ * place of server fns) and Provider; the `@byline/ui` surface is unchanged.
16
+ *
17
+ * Contract scope: only the framework-neutral admin UI components consume
18
+ * this — sign-in, account self-service, admin-user/role write forms, the
19
+ * permissions inspector, role-permissions editor, and the diff modal.
20
+ * Page-container reads (list/edit) stay on direct server-fn imports
21
+ * inside the host's deferred router-coupled containers.
22
+ */
23
+ import type { BylineAdminServices } from '@byline/ui';
24
+ export declare const bylineAdminServices: BylineAdminServices;
25
+ //# sourceMappingURL=byline-admin-services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-admin-services.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-admin-services.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAqCrD,eAAO,MAAM,mBAAmB,EAAE,mBAwBjC,CAAA"}
@@ -0,0 +1,26 @@
1
+ import { changeAccountPassword, updateAccount } from "../server-fns/admin-account/index.js";
2
+ import { setRoleAbilities, whoHasAbility } from "../server-fns/admin-permissions/index.js";
3
+ import { createAdminRole, updateAdminRole } from "../server-fns/admin-roles/index.js";
4
+ import { createAdminUser, setAdminUserPassword, setUserRoles, updateAdminUser } from "../server-fns/admin-users/index.js";
5
+ import { adminSignIn } from "../server-fns/auth/index.js";
6
+ import { getCollectionDocumentVersion } from "../server-fns/collections/get.js";
7
+ const byline_admin_services_getCollectionDocumentVersion = async (collection, documentId, versionId, locale)=>{
8
+ const result = await getCollectionDocumentVersion(collection, documentId, versionId, locale);
9
+ if (null == result) throw new Error(`Document version not found: collection=${collection} document=${documentId} version=${versionId}`);
10
+ return result;
11
+ };
12
+ const bylineAdminServices = {
13
+ adminSignIn: adminSignIn,
14
+ updateAccount: updateAccount,
15
+ changeAccountPassword: changeAccountPassword,
16
+ createAdminUser: createAdminUser,
17
+ updateAdminUser: updateAdminUser,
18
+ setAdminUserPassword: setAdminUserPassword,
19
+ setUserRoles: setUserRoles,
20
+ createAdminRole: createAdminRole,
21
+ updateAdminRole: updateAdminRole,
22
+ setRoleAbilities: setRoleAbilities,
23
+ whoHasAbility: whoHasAbility,
24
+ getCollectionDocumentVersion: byline_admin_services_getCollectionDocumentVersion
25
+ };
26
+ export { bylineAdminServices };
@@ -0,0 +1,22 @@
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
+ * The admin webapp's `BylineClient` singleton.
10
+ *
11
+ * Configured with a `requestContext` factory that resolves the
12
+ * authenticated admin actor per call via `getAdminRequestContext`. Every
13
+ * admin server fn that reads documents goes through this client, so the
14
+ * full read pipeline (`beforeRead` → `findDocuments` → `populate` →
15
+ * `afterRead`) is uniform between admin and any future external
16
+ * client. The collection runtime, db adapter, and storage provider are
17
+ * sourced from the shared `getServerConfig()` so we don't duplicate
18
+ * adapter wiring.
19
+ */
20
+ import { type BylineClient } from '@byline/client';
21
+ export declare function getAdminBylineClient(): BylineClient;
22
+ //# sourceMappingURL=byline-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-client.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAA;AAOtE,wBAAgB,oBAAoB,IAAI,YAAY,CAWnD"}
@@ -0,0 +1,13 @@
1
+ import { createBylineClient } from "@byline/client";
2
+ import { getServerConfig } from "@byline/core";
3
+ import { getAdminRequestContext } from "../auth/auth-context.js";
4
+ let cachedClient;
5
+ function getAdminBylineClient() {
6
+ if (cachedClient) return cachedClient;
7
+ cachedClient = createBylineClient({
8
+ config: getServerConfig(),
9
+ requestContext: getAdminRequestContext
10
+ });
11
+ return cachedClient;
12
+ }
13
+ export { getAdminBylineClient };
@@ -0,0 +1,28 @@
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
+ * Typed accessor for the composed `BylineCore` post-init.
10
+ *
11
+ * Wraps `@byline/core`'s framework-neutral `getBylineCore<TAdminStore>()`
12
+ * and pre-binds `TAdminStore` to `AdminStore` from `@byline/admin`. This
13
+ * package is the admin host adapter — every server fn here ultimately
14
+ * delegates to an `@byline/admin` command that wants the typed store, so
15
+ * baking the generic in once removes the need for each call site to
16
+ * repeat `getBylineCore<AdminStore>()` and to import `AdminStore`
17
+ * separately.
18
+ *
19
+ * Hosts that wire a different admin-store flavour through
20
+ * `initBylineCore<TOtherStore>()` should NOT use this helper — they
21
+ * import `getBylineCore<TOtherStore>()` from `@byline/core` directly.
22
+ * That escape hatch keeps the framework-neutral package agnostic to
23
+ * which admin store is configured.
24
+ */
25
+ import type { AdminStore } from '@byline/admin';
26
+ import { type BylineCore } from '@byline/core';
27
+ export declare function bylineCore(): BylineCore<AdminStore>;
28
+ //# sourceMappingURL=byline-core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-core.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-core.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,cAAc,CAAA;AAE7D,wBAAgB,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,CAEnD"}
@@ -0,0 +1,5 @@
1
+ import { getBylineCore } from "@byline/core";
2
+ function bylineCore() {
3
+ return getBylineCore();
4
+ }
5
+ export { bylineCore };
@@ -0,0 +1,19 @@
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
+ * Host-side adapters that bind the webapp's TanStack Start server functions
10
+ * to the framework-neutral `BylineFieldServices` contract consumed by
11
+ * `@byline/ui` field/form components.
12
+ *
13
+ * Wired into the admin route once via `<BylineFieldServicesProvider>`. A
14
+ * future Next.js host would ship its own adapter file and Provider; the
15
+ * @byline/ui surface is unchanged.
16
+ */
17
+ import type { BylineFieldServices } from '@byline/ui';
18
+ export declare const bylineFieldServices: BylineFieldServices;
19
+ //# sourceMappingURL=byline-field-services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-field-services.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-field-services.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAA2C,MAAM,YAAY,CAAA;AAa9F,eAAO,MAAM,mBAAmB,EAAE,mBAGjC,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { getCollectionDocuments } from "../server-fns/collections/list.js";
2
+ import { uploadField } from "../server-fns/collections/upload.js";
3
+ const byline_field_services_getCollectionDocuments = ({ collection, params })=>getCollectionDocuments({
4
+ data: {
5
+ collection,
6
+ params
7
+ }
8
+ });
9
+ const byline_field_services_uploadField = (collection, formData, createDocument)=>uploadField(collection, formData, createDocument);
10
+ const bylineFieldServices = {
11
+ getCollectionDocuments: byline_field_services_getCollectionDocuments,
12
+ uploadField: byline_field_services_uploadField
13
+ };
14
+ export { bylineFieldServices };
@@ -0,0 +1,10 @@
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 BylineClient } from '@byline/client';
9
+ export declare function getPublicBylineClient(): BylineClient;
10
+ //# sourceMappingURL=byline-public-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-public-client.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-public-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkCH,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAA;AAKtE,wBAAgB,qBAAqB,IAAI,YAAY,CAOpD"}
@@ -0,0 +1,15 @@
1
+ import { createRequestContext } from "@byline/auth";
2
+ import { createBylineClient } from "@byline/client";
3
+ import { getServerConfig } from "@byline/core";
4
+ let cachedClient;
5
+ function getPublicBylineClient() {
6
+ if (cachedClient) return cachedClient;
7
+ cachedClient = createBylineClient({
8
+ config: getServerConfig(),
9
+ requestContext: ()=>createRequestContext({
10
+ readMode: 'published'
11
+ })
12
+ });
13
+ return cachedClient;
14
+ }
15
+ export { getPublicBylineClient };
@@ -0,0 +1,21 @@
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 BylineClient } from '@byline/client';
9
+ export declare function getViewerBylineClient(): BylineClient;
10
+ /**
11
+ * Resolve whether the current request should surface non-published
12
+ * versions. True iff the preview cookie is set **and** a valid admin
13
+ * session resolves. Server fns call this once and pass the result to
14
+ * `status: preview ? 'any' : 'published'` on the SDK read.
15
+ *
16
+ * Defensive by design: the cookie alone is not enough. A signed-out
17
+ * browser carrying an old preview cookie still gets `false` here, which
18
+ * keeps stray query strings or shared links from leaking drafts.
19
+ */
20
+ export declare function isPreviewActive(): Promise<boolean>;
21
+ //# sourceMappingURL=byline-viewer-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byline-viewer-client.d.ts","sourceRoot":"","sources":["../../src/integrations/byline-viewer-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwCH,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAA;AAQtE,wBAAgB,qBAAqB,IAAI,YAAY,CAwBpD;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAQxD"}
@@ -0,0 +1,39 @@
1
+ import { createRequestContext } from "@byline/auth";
2
+ import { createBylineClient } from "@byline/client";
3
+ import { getServerConfig } from "@byline/core";
4
+ import { getAdminRequestContext } from "../auth/auth-context.js";
5
+ import { readPreviewCookie } from "../auth/preview-cookies.js";
6
+ let cachedClient;
7
+ function getViewerBylineClient() {
8
+ if (cachedClient) return cachedClient;
9
+ cachedClient = createBylineClient({
10
+ config: getServerConfig(),
11
+ requestContext: async ()=>{
12
+ if (!readPreviewCookie()) return createRequestContext({
13
+ readMode: 'published'
14
+ });
15
+ try {
16
+ const ctx = await getAdminRequestContext();
17
+ return {
18
+ ...ctx,
19
+ readMode: 'any'
20
+ };
21
+ } catch {
22
+ return createRequestContext({
23
+ readMode: 'published'
24
+ });
25
+ }
26
+ }
27
+ });
28
+ return cachedClient;
29
+ }
30
+ async function isPreviewActive() {
31
+ if (!readPreviewCookie()) return false;
32
+ try {
33
+ await getAdminRequestContext();
34
+ return true;
35
+ } catch {
36
+ return false;
37
+ }
38
+ }
39
+ export { getViewerBylineClient, isPreviewActive };